#55 Interpreter Hang

v3.0
closed
nobody
5
2012-08-14
2005-03-21
Jon Wolfers
No

oorexx 3.0.0 on W2K (5.00.2195 serv pack 4)

Interpreter hangs at line 1360 of accompanying code
Source line is:
if inptxt~Right(1)=' ' & inptxt~strip<>''
value of inptxt='50331690'

if I take the line out of context it runs OK.
it runs OK on Object REXX 2.1.3

================================
here is sysdump (taken at line 1359):


Name=INPBOX, Value='an EDITCONTROL'
Name=SUPER, Value='The USERDIALOG class'
Name=INPTXT, Value='50331690'
Name=SELF, Value='an ORDERBROWSER'
=================================
here is method code:


/---------------------------------------------------------------------------/
::method InputFromUser / The user has
typed some text
/
/---------------------------------------------------------------------------/
/ This routine examines what has been entered, works
out if it is a code,
/
/ a quantity or a barcode & then calls the apropriate
method
/
/---------------------------------------------------------------------------/
say 'Method: InputFromUser'
trace i
arg
inptxt . /
{2.01g}
/

inpbox = self~GetEditControl("INPUTEDITBOX")

if
inptxt='' /
{2.01g}
/
then inptxt =
inpbox~title /{2.01g}/
call sysdumpvariables 'c:\sndump.txt'
if inptxt~Right(1)=' ' & inptxt~strip<>''
then do
inptxt=inptxt~strip
if inptxt~verify('0123456789')=0 / this is numeric (&
maybe bigger than numeric digits)
/
then if inptxt~length < 5
then self~InputQty(inptxt,)
else self~InputBarCode(inptxt)
else self~InputCode
self~FocusItem(100)
end / DO /
===============================
Here is trace i output:


Method: InputFromUser
1353 - arg inptxt .
/{2.01g}/
>>> "50331690"
>.> ""
1355 - inpbox = self~GetEditControl
("INPUTEDITBOX")
>V> "an ORDERBROWSER"
>L> "INPUTEDITBOX"
>>> "INPUTEDITBOX"
>M> "an EDITCONTROL"
>>> "an EDITCONTROL"
1357 - if inptxt=''
/{2.01g}/
>V> "50331690"
>L> ""
>O> "0"
>>> "0"
1359 - call sysdumpvariables 'c:\sndump.txt'
>L> "c:\sndump.txt"
>>> "c:\sndump.txt"
>>> "0"
1360 - if inptxt~Right(1)=' ' & inptxt~strip<>''
>V> "50331690"
>L> "1"
>>> "1"
>M> "0"
>L> " "
>O> "0"
>V> "50331690"
>M> "50331690"
>L> ""
>O> "1"
>O> "0"
>>> "0"
=====================================
For what it is worth, I attach my source file

It hangs every time at the same place, even before
inserting the sysdump

Good luck tracking it down.

Jon Wolfers

Discussion

  • Mark Hessling
    Mark Hessling
    2005-03-21

    Logged In: YES
    user_id=86185

    Jon,

    The sample program is useful to track the problem down,
    however the sample program requires the "obrowser" class.
    Could you please upload this file as well, or email it to
    mark@rexx.org

     
  • Jon Wolfers
    Jon Wolfers
    2005-03-22

    Logged In: YES
    user_id=667060

    Happy to say that this problem is fixed by the more recent
    build (3.0.0 March 17th 2005). I don't know what the problem
    was, but it has gone away.

    Jon

     


Anonymous


Cancel   Add attachments