1. W98 crash running Calculat.exw from Judith's IDE

Does anyone else have a problem running the example program
Calculat.exw *outside* Judith's IDE?
Error occurs if run then immediately close the app.

W98 reports approx 5 errors, 1st one is:
EXW caused an exception c0000027H in module KERNEL32.DLL at
015f:bff88083.
Registers:
EAX=00000000 CS=015f EIP=bff88083 EFLGS=00000246
EBX=0055ff10 SS=0167 ESP=0055fad0 EBP=0055fb48
ECX=0055fadc DS=0167 ESI=815f9644 FS=0f1f
EDX=00022804 ES=0167 EDI=0055fb60 GS=0000
Bytes at CS:EIP:
8b 45 08 8d 4d e4 51 89 7d e4 89 45 e8 e8 47 56 
Stack dump:
00000038 0055fc5c 00557000 c0000027 00000001 0055fb60 bff88083
00000000 bff88083 00000000 bff88083 00000000 0000015f 00010202
0055bb20 00000167 

That would be Exe.exe size 77824 dated 9/12/2001.
(not sure if that date is when built or I d/l'd it)

Bizzarely, If i calculate eg 9*5= then it crashes less than if I just
open & close the app - either way it crashes, however.

- Everything else (so far) seems to run fine on my system.

Pete

new topic     » topic index » view message » categorize

2. Re: W98 crash running Calculat.exw from Judith's IDE

Pete writes:
> Does anyone else have a problem running the example program
> Calculat.exw *outside* Judith's IDE?
> Error occurs if run then immediately close the app.

It works fine for me.

> That would be Exe.exe size 77824 dated 9/12/2001.

I assume you mean exw.exe.
Please check the file size again.
77824 is at least 1K higher than anything I've ever shipped.
You might also try running:
           ex sanity 
in euphoria\demo to compute the checksums on the .exe's.
It's possible you've picked up a virus from somewhere
that has infected exw.exe (and probably other files) on your system.

Regards,
   Rob Craig
   Rapid Deployment Software
   http://www.RapidEuphoria.com

new topic     » goto parent     » topic index » view message » categorize

3. Re: W98 crash running Calculat.exw from Judith's IDE

>I assume you mean exw.exe.
Yes, sorry
>Please check the file size again.
>77824 is at least 1K higher than anything I've ever shipped.
Oops, that was 77824 used; I should have noted 75264 actual size.
>You might also try running:
>           ex sanity 
>in euphoria\demo to compute the checksums on the .exe's.
passed 100%
>It's possible you've picked up a virus from somewhere
>that has infected exw.exe (and probably other files) on your system.
Good call, however last night two different av scans with fresh avdb
found nothing.

If it is just me, not to worry.  ;-(

Pete

new topic     » goto parent     » topic index » view message » categorize

4. Re: W98 crash running Calculat.exw from Judith's IDE

> Does anyone else have a problem running the example program
> Calculat.exw *outside* Judith's IDE?
> Error occurs if run then immediately close the app.

I get the crash too. Someone with trace(3) should help.

    Martin

new topic     » goto parent     » topic index » view message » categorize

5. Re: W98 crash running Calculat.exw from Judith's IDE

On Sat, 12 Jan 2002 23:51:57 +0000, you wrote:

>
>Hi Martin and Pete,
>
>The problem is a change between version 0.11.0 and 0.12.0 of IDE.

Thanks, hopefully I saved someone some grief further down the line...

> IDE does not supply a parent automatically for additional windows any more. 
>Since I did not check the demos sad, the HelpWindow has a 0 (zero) for 
>parent. I changed it to CalcWindow and it runs now.

Erm. actually I didn't understand a word you just said so I (quickly)
checked this out and found on line 83ish (no line numbers in notepad):
constant HelpWindow = create( Window, "HotKeys", CalcWindow, Default,
Default, 419, 323, {WS_DLGFRAME,WS_SYSMENU,WS_MINIMIZEBOX} )

Or did you just hack into my pc and edit that file for me!? blink // ;-(

Seriously, sadly it doesn't seem like you found the (non-urgent)
problem I have -  which should be trapped by exw.exe & not "fixed" by
changing a .exw source anyhow. If it is a corrupt dll on my system I
can't afford to reinstall just now.

Pete

new topic     » goto parent     » topic index » view message » categorize

6. Re: W98 crash running Calculat.exw from Judith's IDE

----- Original Message -----
From: <petelomax at blueyonder.co.uk>

Seriously, sadly it doesn't seem like you found the (non-urgent)
problem I have -  which should be trapped by exw.exe & not "fixed" by
changing a .exw source anyhow. If it is a corrupt dll on my system I
can't afford to reinstall just now.

Pete


If you have a directory name  :\Windows\sysbckup
this contains all of the dll's your system needs to run
properly. Although it's highly unlikely a dll is corrupt
you could copy these into you :\Windows\system
directory to be sure.

Euman

new topic     » goto parent     » topic index » view message » categorize

7. Re: W98 crash running Calculat.exw from Judith's IDE

On Saturday 12 January 2002 07:48 pm, Pete wrote:

> Seriously, sadly it doesn't seem like you found the (non-urgent)
> problem I have -  which should be trapped by exw.exe & not "fixed" by
> changing a .exw source anyhow. If it is a corrupt dll on my system I
> can't afford to reinstall just now.

There seem to be two different crashes to investigate: 
1. When starting calculate from the IDE, and, once you get that one fixed:
2. When closing calculate.

I'm using Win 98 and Derek's latest 55.5 version of Win32Lib.

In  function fDoTVN_GETDISPINFO() around line 20,238 I get an error about 
trying to access the 0'th element of a sequence. Here's my patch, which 
may not be the right thing to do, but it gets us past the error:

 -- This is called before we get the handle, so if
  -- we haven't filled it in yet, we'll just grab
  -- the first one.
   if not lItem
   then
      -- lItem = find(0, tvitem_handle )
      lItem = 1 -- IGM 01/12/2001
   end if

Now, the program will run from the IDE, but will crash with a Windows 
Meaningless Error* when closed. This can be fixed by changing the owner 
of the HelpWindow from 0 to CalcWindow. Now it will run ok from the IDE or 
directly.

Can anyone provide a "proper" fix for Win32Lib? 

Regards,
Irv

( * Windows ME is a registered trademark of Microsoft. Why they are proud of 
this, I don't know. :)

new topic     » goto parent     » topic index » view message » categorize

8. Re: W98 crash running Calculat.exw from Judith's IDE

OK, I have hacked it down to the following:-

include Win32lib.ew
without warning
constant Calcw = create( Window, "Calc", 0, 78, 40, 246, 282, 0)
constant Table2 = create( PushButton, "9", Calcw, 74, 4, 30, 30, 0)
setHint( Table2,"9")
    
procedure screen_event( integer iMsg, atom lParam, atom wParam )    
  seq loc                  
  loc=getRect(Calcw)  
end procedure    
onEvent[Screen] = routine_id("screen_event")   

WinMain( Calcw, Normal )

-- If I comment out EITHER the setHint or the getRect It no longer
crashes when I close the window. I don't know enuf about win32lib yet
to trace it any further.

-- Does this close ok on your machine, Irv?

Pete

new topic     » goto parent     » topic index » view message » categorize

9. Re: W98 crash running Calculat.exw from Judith's IDE

Pete writes:
> OK, I have hacked it down to the following:-
> 
> include Win32lib.ew
> without warning
> constant Calcw = create( Window, "Calc", 0, 78, 40, 246, 282, 0)
> constant Table2 = create( PushButton, "9", Calcw, 74, 4, 30, 30, 0)
> setHint( Table2,"9")
>     
> procedure screen_event( integer iMsg, atom lParam, atom wParam )    
>   seq loc                  
>   loc=getRect(Calcw)  
> end procedure    
> onEvent[Screen] = routine_id("screen_event")   
> 
> WinMain( Calcw, Normal )
> 
> -- If I comment out EITHER the setHint or the getRect It no longer
> crashes when I close the window. I don't know enuf about win32lib yet
> to trace it any further.
> 
> -- Does this close ok on your machine, Irv?

It crashes because the scree_event() tries to call
getRect() after Calcw is closed, which causes the crash.
Workaround is:

<CODE>

include Win32lib.ew
without warning
constant Calcw = create( Window, "Calc", 0, 78, 40, 246, 282, 0)
constant Table2 = create( PushButton, "9", Calcw, 74, 4, 30, 30, 0)
setHint( Table2,"9")
    
procedure screen_event( integer iMsg, atom lParam, atom wParam )    
  seq loc
  seq info
  info = getControlInfo( Calcw, {CONTROLINFO_closed})
  if info[1] then
   -- Calcw is closed, don't measure
   return 
  end if
  loc = getRect(Calcw)
end procedure    
onEvent[Screen] = routine_id("screen_event")

WinMain( Calcw, Normal)

</CODE>

And it should be ok. However, this points to
internal bug in win32lib. (Assuming Bimtap just
by not validId(), which is wrong) 
To fix it, change win32lib.ew to:

<PATCH>
    in function getRect() around line 12130:
    add at the top of the function (after var declarations) this :
        if not validId(id) then
            -- bad id (maybe say something?)
            return {0,0,0,0}
        end if
    and replace
        elsif not validId (id) then
    by
        elsif window_type[id] = Bitmap then
</PATCH>

Thanks for the report. I'll pass it to Derek.

N.B: Anyone know when will Derek come back from vacations ?

    Martin

new topic     » goto parent     » topic index » view message » categorize

10. Re: W98 crash running Calculat.exw from Judith's IDE

Thanks Irv. I've incorporated your fix.
----- Original Message -----
From: "Irv Mullins" <irvm at ellijay.com>
To: "EUforum" <EUforum at topica.com>
Subject: Re: W98 crash running Calculat.exw from Judith's IDE


>
> On Saturday 12 January 2002 07:48 pm, Pete wrote:
>
> > Seriously, sadly it doesn't seem like you found the (non-urgent)
> > problem I have -  which should be trapped by exw.exe & not "fixed" by
> > changing a .exw source anyhow. If it is a corrupt dll on my system I
> > can't afford to reinstall just now.
>
> There seem to be two different crashes to investigate:
> 1. When starting calculate from the IDE, and, once you get that one fixed:
> 2. When closing calculate.
>
> I'm using Win 98 and Derek's latest 55.5 version of Win32Lib.
>
> In  function fDoTVN_GETDISPINFO() around line 20,238 I get an error about
> trying to access the 0'th element of a sequence. Here's my patch, which
> may not be the right thing to do, but it gets us past the error:
>
>  -- This is called before we get the handle, so if
>   -- we haven't filled it in yet, we'll just grab
>   -- the first one.
>    if not lItem
>    then
>       -- lItem = find(0, tvitem_handle )
>       lItem = 1 -- IGM 01/12/2001
>    end if
>
> Now, the program will run from the IDE, but will crash with a Windows
> Meaningless Error* when closed. This can be fixed by changing the owner
> of the HelpWindow from 0 to CalcWindow. Now it will run ok from the IDE or
> directly.
>
> Can anyone provide a "proper" fix for Win32Lib?
>
> Regards,
> Irv
>
> ( * Windows ME is a registered trademark of Microsoft. Why they are proud
of
> this, I don't know. :)
>
>
>
>

new topic     » goto parent     » topic index » view message » categorize

Search



Quick Links

User menu

Not signed in.

Misc Menu