Dolphin XP SP2 Image load Issues...

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
12 messages Options
Reply | Threaded
Open this post in threaded view
|

Dolphin XP SP2 Image load Issues...

Christopher J. Demers
I have a Dolphin 5.1.4 image that I had been working in at home and had
previously snapshoted under Windows XP before installing SP2.  After I
installed SP2 that image will not open.  When I try to open it nothing
appears to happen.  When I looked at the debug stream I saw that there was a
GPF calling getModuleFileName.  I brought the same image to work and it
opened fine on a machine that I have not installed SP2 on.  I was able to
open a virgin image on my XP SP2 machine without problems.  I had some
workspaces open, but nothing that seems really exotic and if they were the
problem I would tend to expect a later failure.  I have AVG Anti-Virus, and
ZoneAlarm on my home computer.  The machine is a 2.40GHz Pentium 4 Processor
with 512 MB RAM.  I did not encounter any problems running a Dolphin
application under SP2.

Anyone installing XP SP2 should be careful, and make sure you have you code
in packages or an STS repository, or stored in some way so you can load it
into a virgin image just in case you run into this issue.

I would be interested to hear if anyone else who has applied SP2 has had
this problem, or has not had it.

Chris


Reply | Threaded
Open this post in threaded view
|

Re: Dolphin XP SP2 Image load Issues...

Steve Alan Waring
Hi Chris,

> I would be interested to hear if anyone else who has applied SP2 has had
> this problem, or has not had it.

I have been running SP2 for a couple of days and I have not seen any
problems with either fresh images or saved images. So far so good.

Steve
--
Steve Waring
[hidden email]


Reply | Threaded
Open this post in threaded view
|

Re: Dolphin XP SP2 Image load Issues...

Christopher J. Demers
In reply to this post by Christopher J. Demers
"Christopher J. Demers" <[hidden email]> wrote in
message news:[hidden email]...
> I have a Dolphin 5.1.4 image that I had been working in at home and had
> previously snapshoted under Windows XP before installing SP2.  After I
> installed SP2 that image will not open.  When I try to open it nothing
...

I opened the image on a pre SP2 machine, closed all windows and did a
"panic" to purge any zombies.  Then I brought that image back home and still
get the GPF trying to open the image.  Here is what was logged from the
debug stream:

[4012] GP Fault in primitive
KernelLibrary>>getModuleFileName:lpFilename:nSize:

I am going to see if I can track the issue down to something specific this
evening with a little more logging code.

Chris


Reply | Threaded
Open this post in threaded view
|

Re: Dolphin XP SP2 Image load Issues...

Christopher J. Demers
"Christopher J. Demers" <[hidden email]> wrote in
message news:[hidden email]...
> "Christopher J. Demers" <[hidden email]> wrote in
> message news:[hidden email]...
> > I have a Dolphin 5.1.4 image that I had been working in at home and had
> > previously snapshoted under Windows XP before installing SP2.  After I
> > installed SP2 that image will not open.  When I try to open it nothing
> ...

The problem seems to be originating from the GDI Plus package (version
5.0.7), or an instance of something in it that stuck around.  When I removed
the GDI Plus package on a non-XPSP2 machine and then opened the saved image
on my XPSP2 machine it worked.  However when I reload the GDI Plus in the
image after I open it on my XPSP2 machine I can save and reload the image
with no problem.  The issues seems to be saving a Dolphin image with the GDI
Plus package in it on a pre XPSP2 machine and opening it on an XPSP2
machine.

I will try to test my hypothesis further this weekend.  Can anyone either
confirm or refute my findings?

Chris


Reply | Threaded
Open this post in threaded view
|

Re: Dolphin XP SP2 Image load Issues...

Steve Alan Waring
Hi Chris,
 
> ... The issues seems to be saving a Dolphin image with the GDI
> Plus package in it on a pre XPSP2 machine and opening it on an XPSP2
> machine.
>
> I will try to test my hypothesis further this weekend.  Can anyone either
> confirm or refute my findings?

I had an image saved under SP1 with Gdiplus installed and didn't see
any problems when I upgraded to SP2.

Have you had any luck tracking the problem down?

I came back to this message wondering if your machine had an AMD
processor which would have activated the new hardware data execution
protection option, but I can see from your first message it was a
Pentium. I just found a problem with the Animation Common Control. The
user started getting "common control call failed" errors. Turns out he
had an AMD machine with the DivX codec installed, which has problems
under SP2 due to hardware data execution protection. This was causing
any apps that used the Animation Common Control problems.

It seems that SP2 problems have a wide impact.

Steve
--
Steve Waring
[hidden email]


Reply | Threaded
Open this post in threaded view
|

Re: Dolphin XP SP2 Image load Issues...

Christopher J. Demers
"Steve Waring" <[hidden email]> wrote in message
news:[hidden email]...
> Hi Chris,
>
> > ... The issues seems to be saving a Dolphin image with the GDI
> > Plus package in it on a pre XPSP2 machine and opening it on an XPSP2
> > machine.
> >
> > I will try to test my hypothesis further this weekend.  Can anyone
either
> > confirm or refute my findings?
>
> I had an image saved under SP1 with Gdiplus installed and didn't see
> any problems when I upgraded to SP2.
>
> Have you had any luck tracking the problem down?

I used a virgin image with the latest patches installed and loaded GDI+ with
all its example and test packages on my non-XPSP2 machine and saved it.  I
then tried to open that image on my XPSP2 computer, and the same error
occurred.  When I injected some logging code in an image with GDI+ installed
I could see that GdiplusLibrary class>>clear was executing as the image
loaded, that method called VMLibrary(ExternalLibrary)>>versionInfo which
called moduleFileName: which ultimately called
KernelLibrary>>getModuleFileName:lpFilename:nSize: which is what causes the
GPF on my XPSP2 machine.  I can only get the logging information on a
non-XPSP2 computer so I can only guess that it might be taking the same path
on XPSP2.

It is possible that GDI+ is not the primary cause of the problem, but
perhaps an aggravating factor.  Though I am quite surprised that I saw the
same problem in a virgin image.  Unfortunately I don't have an non-XPSP2 and
XPSP2 machine sitting next to each other so it is a bit slow to experiment.
GDI+ is not critical to me at the moment, so I have slowed down a bit.

I _think_ what _might_ be happening is that something is trying to do
something before KernalLibrary is completely ready.

If what I am experiencing is really more than just a very odd fluke then at
some point I expect others will encounter this problem in some way.  If no
one else experiences it, then it must just be a rare anomaly.

> I came back to this message wondering if your machine had an AMD
> processor which would have activated the new hardware data execution
> protection option, but I can see from your first message it was a
> Pentium. I just found a problem with the Animation Common Control. The
> user started getting "common control call failed" errors. Turns out he
> had an AMD machine with the DivX codec installed, which has problems
> under SP2 due to hardware data execution protection. This was causing
> any apps that used the Animation Common Control problems.

I _think_ we are supposed to have problems with Dolphin applications on
AMD's with the hardware data execution protection and XPSP2.  I _think_ one
can workaround it by adjusting some compatibility settings.  Is the only
problem on the AMD machine with XPSP2 the animation control, or did you have
any Dolphin specific issues as well?

Has anyone stress tested a Dolphin application on an AMD with execution
protection and XPSP2 yet?  I have not had to deal with this yet, and have no
way to test it.  Perhaps someone could start a thread with info if they have
experience with this.

Chris


Reply | Threaded
Open this post in threaded view
|

Re: Dolphin XP SP2 Image load Issues...

Steve Alan Waring
Hi Chris,
 
> GdiplusLibrary class>>clear was executing as the image
> loaded, that method called VMLibrary(ExternalLibrary)>>versionInfo which
> called moduleFileName: which ultimately called
> KernelLibrary>>getModuleFileName:lpFilename:nSize: which is what causes the
> GPF on my XPSP2 machine.  I can only get the logging information on a
> non-XPSP2 computer so I can only guess that it might be taking the same path
> on XPSP2.

OK, this is sounding familiar. About a year ago I had a problem with
GdiplusLibrary class>>clear causing a GPF when a ToGo app was exiting,
and the app was wrapped by a protection shell that acted as a debugger
for the ToGo app.

 From memory, I tracked the problem down to the Gdiplus helper thread,
but I could not find any problems with the way the Dolphin code was
calling GdiplusStartup/GdiplusShutdown. I did send something to Blair
that reproduced the problem but I don't recall it being resolved.

I "solved" my problem by avoiding the GdiplusShutdown call when
exiting the app.

It sounds like you could be seeing a variation of this same bug. I
don't have any solutions, but I will dig up my old messages about it,
and have another look it at.

> I _think_ we are supposed to have problems with Dolphin applications on
> AMD's with the hardware data execution protection and XPSP2.  I _think_ one
> can workaround it by adjusting some compatibility settings.  Is the only
> problem on the AMD machine with XPSP2 the animation control, or did you have
> any Dolphin specific issues as well?

The animation control problem is the only problem I have heard of so
far. Last week I saw some statistics (based on weblogs) that around
10% of XP machines at that time had SP2 installed. So I am guessing
(hoping!) that if there is a general problem with Dolphin/AMD/SP2 we
would have heard about it by now.

> Has anyone stress tested a Dolphin application on an AMD with execution
> protection and XPSP2 yet?  I have not had to deal with this yet, and have no
> way to test it.  Perhaps someone could start a thread with info if they have
> experience with this.

This would be good to know.

Steve
--
Steve Waring
[hidden email]


Reply | Threaded
Open this post in threaded view
|

Re: Dolphin XP SP2 Image load Issues...

Dan Antion
In reply to this post by Christopher J. Demers
Christopher J. Demers wrote:

> I have a Dolphin 5.1.4 image that I had been working in at home and had
> previously snapshoted under Windows XP before installing SP2.  After I
> installed SP2 that image will not open.  When I try to open it nothing
> appears to happen.  When I looked at the debug stream I saw that there was a
> GPF calling getModuleFileName.  I brought the same image to work and it
> opened fine on a machine that I have not installed SP2 on.  I was able to
> open a virgin image on my XP SP2 machine without problems.  I had some
> workspaces open, but nothing that seems really exotic and if they were the
> problem I would tend to expect a later failure.  I have AVG Anti-Virus, and
> ZoneAlarm on my home computer.  The machine is a 2.40GHz Pentium 4 Processor
> with 512 MB RAM.  I did not encounter any problems running a Dolphin
> application under SP2.
>
> Anyone installing XP SP2 should be careful, and make sure you have you code
> in packages or an STS repository, or stored in some way so you can load it
> into a virgin image just in case you run into this issue.
>
> I would be interested to hear if anyone else who has applied SP2 has had
> this problem, or has not had it.
>
> Chris
>
>
I don't know if this is causing, or even relted to the problem you are
having, but it seems worth consideration. The latest vunerability with
Windows, the JPG problem, is related to an error in the Type Library for
GDIPLUS. Apparently this has been known for a while, and is one of the
issues that was fixed in SP2.  SP2 systems are not vunerable to this
latest threat.  I ran the GDI+ JPG detection test, provided by
Microsoft, and was ultimately linked to a page urging me to upgrade to
SP2.  I chose to apply the other patches, becasue I dont' want SP2 at
this point. I am not having any problems with GDI+ after applying these
patches, but I'm not sure what they actually do.

You can get more information about the link below, including some
information for developers

http://www.microsoft.com/technet/security/bulletin/MS04-028.mspx

Dan


Reply | Threaded
Open this post in threaded view
|

Re: Dolphin XP SP2 Image load Issues...

Blair McGlashan-3
In reply to this post by Christopher J. Demers
"Christopher J. Demers" <[hidden email]> wrote in
message news:[hidden email]...

> "Steve Waring" <[hidden email]> wrote in message
> news:[hidden email]...
>> Hi Chris,
>>
>> > ... The issues seems to be saving a Dolphin image with the GDI
>> > Plus package in it on a pre XPSP2 machine and opening it on an XPSP2
>> > machine.
>> >
>> > I will try to test my hypothesis further this weekend.  Can anyone
> either
>> > confirm or refute my findings?
>>
>> I had an image saved under SP1 with Gdiplus installed and didn't see
>> any problems when I upgraded to SP2.
>>
>> Have you had any luck tracking the problem down?
>
> I used a virgin image with the latest patches installed and loaded GDI+
> with
> all its example and test packages on my non-XPSP2 machine and saved it.  I
> then tried to open that image on my XPSP2 computer, and the same error
> occurred.  When I injected some logging code in an image with GDI+
> installed
> I could see that GdiplusLibrary class>>clear was executing as the image
> loaded, that method called VMLibrary(ExternalLibrary)>>versionInfo which
> called moduleFileName: which ultimately called
> KernelLibrary>>getModuleFileName:lpFilename:nSize: which is what causes
> the
> GPF on my XPSP2 machine.  I can only get the logging information on a
> non-XPSP2 computer so I can only guess that it might be taking the same
> path
> on XPSP2.
> ...

That rings a bell. The GDI+ library includes a version check ( to
differentiate between Dolphin 5 and 6) that cannot be performed at that
early stage in startup processing (i.e. it ends up performing an external
library call to another library before that library has itself been properly
initialised). This works OK when you load the image on an OS version that
has the Kernel32 function at the same offset in the DLL, but it might jump
into the middle of the function (or some other function) otherwise. SP2
updates the kernel and the function offsets change. I remember encountering
this problem when upgrading one of my machines to SP2 during the beta
programme. We have patched the GdiplusLibrary class to avoid this in our
Dolphin 6 copy of the code (see below).

That reminds me, I never did get around to sending Louis Sumberg all our
updates. Sorry Louis (if you're reading). We're keen to ship Gdiplus in the
base system for Dolphin 6 (since we want to use it), so we need to make sure
we have a common version.

Regards

Blair
---------------
!GdiplusLibrary class methodsFor!

clear
 SessionManager current imageVersionMajor lowWord < 6
  ifTrue:
   ["Dolphin 5 doesn't send any kind of initialization message to a default
    library instance when it is reopened. This means that the
GdiplusStartup()
    call is not made. Therefore we must discard any pre-existing default
    instance."
   self closeDefault.
   self clearMethodDictionary: self methodDictionary]
  ifFalse:
   ["Dolphin 6 re-initializes the default instance when it is opened, so we
don't need to discard it"
   super clear]! !
!GdiplusLibrary class categoriesFor: #clear!initializing!private! !


Reply | Threaded
Open this post in threaded view
|

Re: Dolphin XP SP2 Image load Issues...

Christopher J. Demers
"Blair McGlashan" <[hidden email]> wrote in message
news:[hidden email]...

> "Christopher J. Demers" <[hidden email]> wrote in
>> I could see that GdiplusLibrary class>>clear was executing as the image
>> loaded, that method called VMLibrary(ExternalLibrary)>>versionInfo which
>> called moduleFileName: which ultimately called
>> KernelLibrary>>getModuleFileName:lpFilename:nSize: which is what causes
>> the
>> GPF on my XPSP2 machine.  I can only get the logging information on a
>
> That rings a bell. The GDI+ library includes a version check ( to
> differentiate between Dolphin 5 and 6) that cannot be performed at that
> early stage in startup processing (i.e. it ends up performing an external
> library call to another library before that library has itself been
> properly initialised). This works OK when you load the image on an OS
> version that has the Kernel32 function at the same offset in the DLL, but
> it might jump into the middle of the function (or some other function)
> otherwise. SP2 updates the kernel and the function offsets change. I
> remember encountering this problem when upgrading one of my machines to
> SP2 during the beta programme. We have patched the GdiplusLibrary class to
> avoid this in our Dolphin 6 copy of the code (see below).

This sounds like exactly the problem I was encountering.  However the method
appears to already be the same as the code you attached.  I imagine the fix
is to remove the Dolphin 5 condition, and duplicate the Dolphin 6 behavior
of initializing all default instances, presumably after the critical system
libraries have been reinitialized.

> That reminds me, I never did get around to sending Louis Sumberg all our
> updates. Sorry Louis (if you're reading). We're keen to ship Gdiplus in
> the base system for Dolphin 6 (since we want to use it), so we need to
> make sure we have a common version.

It will be great to have GDI+ included in the base system.  I really
appreciate everyone's work on it.

Blair, I just noticed your new e-mail address.  Is Object Arts affiliated
with ObjectAutomation now?

Chris


Reply | Threaded
Open this post in threaded view
|

Re: Dolphin XP SP2 Image load Issues...

Blair McGlashan-3
"Christopher J. Demers" <[hidden email]> wrote in
message news:[hidden email]...

> "Blair McGlashan" <[hidden email]> wrote in message
> news:[hidden email]...
>> "Christopher J. Demers" <[hidden email]> wrote in
>>> I could see that GdiplusLibrary class>>clear was executing as the image
>>> loaded, that method called VMLibrary(ExternalLibrary)>>versionInfo which
>>> called moduleFileName: which ultimately called
>>> KernelLibrary>>getModuleFileName:lpFilename:nSize: which is what causes
>>> the
>>> GPF on my XPSP2 machine.  I can only get the logging information on a
>>
>> That rings a bell. The GDI+ library includes a version check ( to
>> differentiate between Dolphin 5 and 6) that cannot be performed at that
>> early stage in startup processing (i.e. it ends up performing an external
>> library call to another library before that library has itself been
>> properly initialised). This works OK when you load the image on an OS
>> version that has the Kernel32 function at the same offset in the DLL, but
>> it might jump into the middle of the function (or some other function)
>> otherwise. SP2 updates the kernel and the function offsets change. I
>> remember encountering this problem when upgrading one of my machines to
>> SP2 during the beta programme. We have patched the GdiplusLibrary class
>> to avoid this in our Dolphin 6 copy of the code (see below).
>
> This sounds like exactly the problem I was encountering.  However the
> method appears to already be the same as the code you attached.  I imagine
> the fix is to remove the Dolphin 5 condition, and duplicate the Dolphin 6
> behavior of initializing all default instances, presumably after the
> critical system libraries have been reinitialized.
>
>> That reminds me, I never did get around to sending Louis Sumberg all our
>> updates. Sorry Louis (if you're reading). We're keen to ship Gdiplus in
>> the base system for Dolphin 6 (since we want to use it), so we need to
>> make sure we have a common version.
>
> It will be great to have GDI+ included in the base system.  I really
> appreciate everyone's work on it.
>
> Blair, I just noticed your new e-mail address.  Is Object Arts affiliated
> with ObjectAutomation now?
>

No, but if there is a blair at oa.com, then he'll be receiving a lot of
spam: Sorry Blair.

:-)

Regards

Blair


Reply | Threaded
Open this post in threaded view
|

Re: Dolphin XP SP2 Image load Issues...

Louis Sumberg-2
In reply to this post by Blair McGlashan-3
> That reminds me, I never did get around to sending Louis Sumberg all our
> updates. Sorry Louis (if you're reading). We're keen to ship Gdiplus in
the
> base system for Dolphin 6 (since we want to use it), so we need to make
sure
> we have a common version.

Oh, I'm reading alright ... and delighted to hear of Gdiplus' "elevated
status" :)