[Oorexx-devel] Fwd: [Oorexx-bugs] [ oorexx-Bugs-2779503 ] ooRexx 4.0: RexxShutdownAPI missing from rxapi.dll

2009-04-23 Thread Rick McGuire
I'm not too sure what do with this one.  There are a number of APIs
that have basically no meaning at all in the 4.0 world, and this is
one of them.  There are others such as RexxTerminate() and
RexxWaitForTermination() that were part of the documented APIs.  These
have been now stubbed off and are nops and are documented as
deprecated.  The line in the sand we've drawn so far has been to
support documented APIs, but if you've used undocumented ones, well,
tough.

RexxShutdown() falls into the undocumented category.  It would be
trivial to stub it out and make it a NOP, but there are lots of other
undocumented bits that can't really work that way and there will be
absolutely no attempt to get them working in 4.0.  My gut feeling is
we should say no to this requested, but I'm willing to go with
whatever the consensus is.

Rick


-- Forwarded message --
From: SourceForge.net nore...@sourceforge.net
Date: Thu, Apr 23, 2009 at 9:29 AM
Subject: [Oorexx-bugs] [ oorexx-Bugs-2779503 ] ooRexx 4.0:
RexxShutdownAPI missing from rxapi.dll
To: nore...@sourceforge.net


Bugs item #2779503, was opened at 2009-04-23 23:29
Message generated for change (Tracker Item Submitted) made by guillerme
You can respond by visiting:
https://sourceforge.net/tracker/?func=detailatid=684730aid=2779503group_id=119701

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: APIs
Group: None
Status: Open
Resolution: None
Priority: 5
Private: No
Submitted By: Jean-Noel Guillerme (guillerme)
Assigned to: Nobody/Anonymous (nobody)
Summary: ooRexx 4.0: RexxShutdownAPI missing from rxapi.dll

Initial Comment:
Hi,
we have a C++ application using the rexx API. This program uses the
function rexxShutdownAPI.
It seems this function is not supported in oorexx 4.0. Would it be
however possible to maintain it for binary compatibility ?
Thanks.

--

You can respond by visiting:
https://sourceforge.net/tracker/?func=detailatid=684730aid=2779503group_id=119701

--
Stay on top of everything new and different, both inside and
around Java (TM) technology - register by April 22, and save
$200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco.
300 plus technical and hands-on sessions. Register today.
Use priority code J9JMT32. http://p.sf.net/sfu/p
___
Oorexx-bugs mailing list
oorexx-b...@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-bugs

--
Stay on top of everything new and different, both inside and 
around Java (TM) technology - register by April 22, and save
$200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco.
300 plus technical and hands-on sessions. Register today. 
Use priority code J9JMT32. http://p.sf.net/sfu/p
___
Oorexx-devel mailing list
Oorexx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-devel


Re: [Oorexx-devel] Fwd: [Oorexx-bugs] [ oorexx-Bugs-2779503 ] ooRexx 4.0: RexxShutdownAPI missing from rxapi.dll

2009-04-23 Thread Mark Miesfeld
On Thu, Apr 23, 2009 at 6:50 AM, Rick McGuire object.r...@gmail.com wrote:
 I'm not too sure what do with this one.  There are a number of APIs
 that have basically no meaning at all in the 4.0 world, and this is
 one of them.  ...  The line in the sand we've drawn so far has been to
 support documented APIs, but if you've used undocumented ones, well,
 tough.

 ...  My gut feeling is
 we should say no to this requested, but I'm willing to go with
 whatever the consensus is.

In principle I agree with this, and think we should say no to this
specific request based on that.

It is the line I intend to take in ooDialog.  Although, I did
compromise on one specific instance (BinaryAnd) because it had been
used through out the doc examples, even though it was not documented
anywhere.

I'm not 100% set against it in this case, because I'm not very
familiar with those APIs.  For instance, if it is a case that they
used it because in was in a lot public examples, even though not
documented.

--
Mark Miesfeld

--
Stay on top of everything new and different, both inside and 
around Java (TM) technology - register by April 22, and save
$200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco.
300 plus technical and hands-on sessions. Register today. 
Use priority code J9JMT32. http://p.sf.net/sfu/p
___
Oorexx-devel mailing list
Oorexx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-devel


Re: [Oorexx-devel] Fwd: [Oorexx-bugs] [ oorexx-Bugs-2779503 ] ooRexx 4.0: RexxShutdownAPI missing from rxapi.dll

2009-04-23 Thread Rick McGuire
Crud, I hadn't thought to check in the samples.  It is used in one of
the samples and was included in the rexx.h header files.
I think this one needs to be added back as at least a deprecated stub.

Rick

On Thu, Apr 23, 2009 at 10:25 AM, Mark Miesfeld miesf...@gmail.com wrote:
 On Thu, Apr 23, 2009 at 6:50 AM, Rick McGuire object.r...@gmail.com wrote:
 I'm not too sure what do with this one.  There are a number of APIs
 that have basically no meaning at all in the 4.0 world, and this is
 one of them.  ...  The line in the sand we've drawn so far has been to
 support documented APIs, but if you've used undocumented ones, well,
 tough.

 ...  My gut feeling is
 we should say no to this requested, but I'm willing to go with
 whatever the consensus is.

 In principle I agree with this, and think we should say no to this
 specific request based on that.

 It is the line I intend to take in ooDialog.  Although, I did
 compromise on one specific instance (BinaryAnd) because it had been
 used through out the doc examples, even though it was not documented
 anywhere.

 I'm not 100% set against it in this case, because I'm not very
 familiar with those APIs.  For instance, if it is a case that they
 used it because in was in a lot public examples, even though not
 documented.

 --
 Mark Miesfeld

 --
 Stay on top of everything new and different, both inside and
 around Java (TM) technology - register by April 22, and save
 $200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco.
 300 plus technical and hands-on sessions. Register today.
 Use priority code J9JMT32. http://p.sf.net/sfu/p
 ___
 Oorexx-devel mailing list
 Oorexx-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/oorexx-devel


--
Stay on top of everything new and different, both inside and 
around Java (TM) technology - register by April 22, and save
$200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco.
300 plus technical and hands-on sessions. Register today. 
Use priority code J9JMT32. http://p.sf.net/sfu/p
___
Oorexx-devel mailing list
Oorexx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-devel


Re: [Oorexx-devel] Fwd: [Oorexx-bugs] [ oorexx-Bugs-2779503 ] ooRexx 4.0: RexxShutdownAPI missing from rxapi.dll

2009-04-23 Thread Mark Miesfeld
On Thu, Apr 23, 2009 at 7:32 AM, Rick McGuire object.r...@gmail.com wrote:

 Crud, I hadn't thought to check in the samples.  It is used in one of
 the samples and was included in the rexx.h header files.
 I think this one needs to be added back as at least a deprecated stub.

Crud  My sentiments exactly.  I keep seeing things in ooDialog, and
even oleObject, where they documented some part of the implementation,
rather than just documenting the exposed functionality.

I agree, I think we probably should add back a deprecated stub here.

--
Mark Miesfeld

--
Stay on top of everything new and different, both inside and 
around Java (TM) technology - register by April 22, and save
$200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco.
300 plus technical and hands-on sessions. Register today. 
Use priority code J9JMT32. http://p.sf.net/sfu/p
___
Oorexx-devel mailing list
Oorexx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-devel


[Oorexx-devel] New ::Constant Directive

2009-04-23 Thread Gil Barmwater
I'm trying to make sure I fully understand the new features in 4.0.0 and 
the first one I'm playing with is ::constant.  I've read over the 
documentation and tried to code the equivalent functionality in 3.2. 
Here is what I came up with:

If in 4.0.0 I write
::class golden

::constant phi 1.618

then that should be the same as
::class golden

::method phi class unguarded
 return 1.618

::method phi unguarded
 forward to (self~class)

Is this correct or have I missed something?
-- 
Gil Barmwater

--
Stay on top of everything new and different, both inside and 
around Java (TM) technology - register by April 22, and save
$200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco.
300 plus technical and hands-on sessions. Register today. 
Use priority code J9JMT32. http://p.sf.net/sfu/p
___
Oorexx-devel mailing list
Oorexx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-devel


Re: [Oorexx-devel] New ::Constant Directive

2009-04-23 Thread Rick McGuire
Nope, that's pretty much the picture, though from a strict correctness
standpoint, it would really be:

 ::class golden

 ::method phi class unguarded
 return 1.618

 ::method phi unguarded
 return 1.618

The instance one does not forward to the class one, but has it's own
version of the same method object.

Rick


On Thu, Apr 23, 2009 at 1:14 PM, Gil Barmwater gbarmwa...@alum.rpi.edu wrote:
 I'm trying to make sure I fully understand the new features in 4.0.0 and
 the first one I'm playing with is ::constant.  I've read over the
 documentation and tried to code the equivalent functionality in 3.2.
 Here is what I came up with:

 If in 4.0.0 I write
 ::class golden

 ::constant phi 1.618

 then that should be the same as
 ::class golden

 ::method phi class unguarded
     return 1.618

 ::method phi unguarded
     forward to (self~class)

 Is this correct or have I missed something?
 --
 Gil Barmwater

 --
 Stay on top of everything new and different, both inside and
 around Java (TM) technology - register by April 22, and save
 $200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco.
 300 plus technical and hands-on sessions. Register today.
 Use priority code J9JMT32. http://p.sf.net/sfu/p
 ___
 Oorexx-devel mailing list
 Oorexx-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/oorexx-devel


--
Stay on top of everything new and different, both inside and 
around Java (TM) technology - register by April 22, and save
$200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco.
300 plus technical and hands-on sessions. Register today. 
Use priority code J9JMT32. http://p.sf.net/sfu/p
___
Oorexx-devel mailing list
Oorexx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-devel


[Oorexx-devel] Bizarre Windows I/O problems with the 4.0 beta.

2009-04-23 Thread Rick McGuire
We now have two problems showing up in the 4.0 beta that can only be
classified as beyond bizarre and both seem to point to problems with
the _read() function in the C runtime library.  I'm not sure I have
any good solutions at this point.

In 3.2.0, the stream library was implemented using the higher-level
stdio functions.  A fairly large amount of the stream library was
devoted to getting around differences in the different system and
essentially using the stdio functions as if they were the low level IO
routines in the first place.

In 4.0, each platform provides a SysFile class that encapsulates the
I/O functions and provides many of the functions of C runtime higher
level I/O routines, but in a fashion that is more tightly tuned to
ooRexx's needs.  All I/O access is done using the low-level functions
(open() vs. fopen(), read() rather than fread(), etc.).

Both problem give the symptom that the _read() function appears to be
picking up data from someplace other than the opened data stream.  I
have tried all sorts of solutions to this, but in the end, it all
boils down to this should work.

I'm not sure where to go from here.  One potential solution would be
to go native and try bypassing the C runtime functions and use the
Native Windows APIs in the SysFile implementation.  This is not too
terribly hard to do (I think), though performing the mappings for
things like open will be a bit of a pain to implement.  I have a
sandbox branch already where I sort of started doing this, but have
generally been tied up with other fixes to make much progress with it.
 I'm hesitant to really go this route for a couple of reasons.  1)
What do we do if it doesn't fix the problems, and 2)  This is a fairly
big change to introduce in the beta.  But then, we might not really
have much choice.

Note that going back to the old stream library is definitely not an
option.  That had some serious issues of its own, and would still need
to be completely reworked for the new APIs and 64-bit support.  That
would be an even larger change than bypassing the C runtime (and would
impact the unix systems as well as Windows).

Anybody else have any ideas on how to approach this?  Moving to a
dynamically linked C runtime looks like a dead end for a lot of
reasons.  I wish I could figure out what the root cause for these
problems.

Rick

--
Crystal Reports #45; New Free Runtime and 30 Day Trial
Check out the new simplified licensign option that enables unlimited
royalty#45;free distribution of the report engine for externally facing 
server and web deployment.
http://p.sf.net/sfu/businessobjects
___
Oorexx-devel mailing list
Oorexx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-devel


Re: [Oorexx-devel] New ::Constant Directive

2009-04-23 Thread Gil Barmwater
Thanks Rick.  Glad I didn't miss something here.  BTW, I used the
'forward' to limit the appearance of the value to a single spot, even
though it incurs a performance hit.

Next question: are there any good examples of using the .package and
.routine classes?  I'm a bit fuzzy as to when I would use them.  I
suspect there are testunits - haven't had time to wade through SVN
looking for them - but do they show where one might use these classes as
opposed to the mechanics of how they work?

Rick McGuire wrote:
 Nope, that's pretty much the picture, though from a strict correctness
 standpoint, it would really be:
 
 
::class golden

::method phi class unguarded
return 1.618

::method phi unguarded
return 1.618
 
 
 The instance one does not forward to the class one, but has it's own
 version of the same method object.
 
 Rick
 
 
 On Thu, Apr 23, 2009 at 1:14 PM, Gil Barmwater gbarmwa...@alum.rpi.edu 
 wrote:
 
I'm trying to make sure I fully understand the new features in 4.0.0 and
the first one I'm playing with is ::constant.  I've read over the
documentation and tried to code the equivalent functionality in 3.2.
Here is what I came up with:

If in 4.0.0 I write
::class golden

::constant phi 1.618

then that should be the same as
::class golden

::method phi class unguarded
return 1.618

::method phi unguarded
forward to (self~class)

Is this correct or have I missed something?
--
Gil Barmwater

--
Stay on top of everything new and different, both inside and
around Java (TM) technology - register by April 22, and save
$200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco.
300 plus technical and hands-on sessions. Register today.
Use priority code J9JMT32. http://p.sf.net/sfu/p
___
Oorexx-devel mailing list
Oorexx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-devel

 
 
 --
 Stay on top of everything new and different, both inside and 
 around Java (TM) technology - register by April 22, and save
 $200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco.
 300 plus technical and hands-on sessions. Register today. 
 Use priority code J9JMT32. http://p.sf.net/sfu/p
 ___
 Oorexx-devel mailing list
 Oorexx-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/oorexx-devel
 

-- 
Gil Barmwater

--
Crystal Reports #45; New Free Runtime and 30 Day Trial
Check out the new simplified licensign option that enables unlimited
royalty#45;free distribution of the report engine for externally facing 
server and web deployment.
http://p.sf.net/sfu/businessobjects
___
Oorexx-devel mailing list
Oorexx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-devel


Re: [Oorexx-devel] Bizarre Windows I/O problems with the 4.0 beta.

2009-04-23 Thread Mike Cowlishaw
Just a very quick response to this question (I have to drop offline in 5 
minutes) ...

I remember from ages ago (1980s) having trouble using the low-level 
routines in DOS and Windows (and OS/2).  The same *sort* of things that we 
have been seeing .. multithread, perhaps, just weird things.  So now my C 
code (unless it's very old) always uses fread, etc.

read() and _read() might have very different characteristics .. seem to 
have been burned by something like that in the past, too.

Maybe not much help ... sorry.

Mike

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Mike Cowlishaw, IBM Fellow
http://bit.ly/mfc
IBM UK (MP8), PO Box 31, Birmingham Road, Warwick, CV34 5JL





Unless stated otherwise above:
IBM United Kingdom Limited - Registered in England and Wales with number 
741598. 
Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU





--
Crystal Reports #45; New Free Runtime and 30 Day Trial
Check out the new simplified licensign option that enables unlimited
royalty#45;free distribution of the report engine for externally facing 
server and web deployment.
http://p.sf.net/sfu/businessobjects___
Oorexx-devel mailing list
Oorexx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-devel


Re: [Oorexx-devel] New ::Constant Directive

2009-04-23 Thread Rick McGuire
Well, routines are really useful to for passing around function
pointers or doing dynamic calls.  For example, the old problem of
doing a variable based functions.  For example,

::method init
  expose variableRoutines
  // create a directory with the set of locally defined routines
  variableRoutines = .context~package~routines

::method callit
  expose variableRoutines
  use arg functionName
  say variableRoutines[functionName]~callWith(arg(2, 'A'))

The package class allows you to examine/access code for your own or
other packages.  Some useful functions include what is essentially
equivalent to a conditional ::requires or conditionally load native
libraries to see if they're available.

Rick


On Thu, Apr 23, 2009 at 2:28 PM, Gil Barmwater gbarmwa...@alum.rpi.edu wrote:
 Thanks Rick.  Glad I didn't miss something here.  BTW, I used the
 'forward' to limit the appearance of the value to a single spot, even
 though it incurs a performance hit.

 Next question: are there any good examples of using the .package and
 .routine classes?  I'm a bit fuzzy as to when I would use them.  I
 suspect there are testunits - haven't had time to wade through SVN
 looking for them - but do they show where one might use these classes as
 opposed to the mechanics of how they work?

 Rick McGuire wrote:
 Nope, that's pretty much the picture, though from a strict correctness
 standpoint, it would really be:


::class golden

::method phi class unguarded
    return 1.618

::method phi unguarded
    return 1.618


 The instance one does not forward to the class one, but has it's own
 version of the same method object.

 Rick


 On Thu, Apr 23, 2009 at 1:14 PM, Gil Barmwater gbarmwa...@alum.rpi.edu 
 wrote:

I'm trying to make sure I fully understand the new features in 4.0.0 and
the first one I'm playing with is ::constant.  I've read over the
documentation and tried to code the equivalent functionality in 3.2.
Here is what I came up with:

If in 4.0.0 I write
::class golden

::constant phi 1.618

then that should be the same as
::class golden

::method phi class unguarded
    return 1.618

::method phi unguarded
    forward to (self~class)

Is this correct or have I missed something?
--
Gil Barmwater

--
Stay on top of everything new and different, both inside and
around Java (TM) technology - register by April 22, and save
$200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco.
300 plus technical and hands-on sessions. Register today.
Use priority code J9JMT32. http://p.sf.net/sfu/p
___
Oorexx-devel mailing list
Oorexx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-devel



 --
 Stay on top of everything new and different, both inside and
 around Java (TM) technology - register by April 22, and save
 $200 on the JavaOne (SM) conference, June 2-5, 2009, San Francisco.
 300 plus technical and hands-on sessions. Register today.
 Use priority code J9JMT32. http://p.sf.net/sfu/p
 ___
 Oorexx-devel mailing list
 Oorexx-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/oorexx-devel


 --
 Gil Barmwater

 --
 Crystal Reports #45; New Free Runtime and 30 Day Trial
 Check out the new simplified licensign option that enables unlimited
 royalty#45;free distribution of the report engine for externally facing
 server and web deployment.
 http://p.sf.net/sfu/businessobjects
 ___
 Oorexx-devel mailing list
 Oorexx-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/oorexx-devel


--
Crystal Reports #45; New Free Runtime and 30 Day Trial
Check out the new simplified licensign option that enables unlimited
royalty#45;free distribution of the report engine for externally facing 
server and web deployment.
http://p.sf.net/sfu/businessobjects
___
Oorexx-devel mailing list
Oorexx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-devel


Re: [Oorexx-devel] Bizarre Windows I/O problems with the 4.0 beta.

2009-04-23 Thread Mark Miesfeld
Rick,

I'm not going to do this in line cause I'm still thinking about it a
little.  No option looks good this late in the beta, and it's really
not clear which would be the easiest and most likely to fix the
problem.

I take it the second instance is Walter's bug.  Do you have a set up
that reproduces it reliably?

One other option, is to try building with VC++ 2003 and / or VC++
2008.  I have both Visual Studios.  I think both of them will have a
different CRT, maybe only slightly different.  I don't know how much
change there is between versions, but there is some.

I try ever day and haven't once seen what Mike reported.  But, if
Walter's bug is reproducible, I can try building with some different
compiler versions.

Other than that, going with the Windows native API seems like
something we may have to try.

Back to Walter's bug, does that come from reading from the console, or
is it reading from a file?  Windows has always had problems with its
low-level console implementation being so much different than the Unix
implementation.  Which was one reason it was so hard to port Unix
applications to Windows.

Also, I have been searching for any references to similar problems in
Windows.  One thing I did come up with is people talking about
flushing the keyboard buffer when an application started up.  Reports
of the buffer having garbage in it even though it was a new process
starting up.  That would only apply if it was always the first read
from the console that had the problem.  And I didn't think that was
the case with Mike's problem.

--
Mark Miesfeld

--
Crystal Reports #45; New Free Runtime and 30 Day Trial
Check out the new simplified licensign option that enables unlimited
royalty#45;free distribution of the report engine for externally facing 
server and web deployment.
http://p.sf.net/sfu/businessobjects
___
Oorexx-devel mailing list
Oorexx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-devel


Re: [Oorexx-devel] Bizarre Windows I/O problems with the 4.0 beta.

2009-04-23 Thread Rick McGuire
Answers below.

On Thu, Apr 23, 2009 at 3:23 PM, Mark Miesfeld miesf...@gmail.com wrote:
 Rick,

 I'm not going to do this in line cause I'm still thinking about it a
 little.  No option looks good this late in the beta, and it's really
 not clear which would be the easiest and most likely to fix the
 problem.

 I take it the second instance is Walter's bug.  Do you have a set up
 that reproduces it reliably?

I've not been able to reproduce at all.  Walter can reproduce it
reliably, and Rony has also been able to reproduce.  So far, these
problems appear to be mostly a European thing :-)



 One other option, is to try building with VC++ 2003 and / or VC++
 2008.  I have both Visual Studios.  I think both of them will have a
 different CRT, maybe only slightly different.  I don't know how much
 change there is between versions, but there is some.

That might be an interesting experiment to try, though I think I'd go
to 2008 rather than 2003.


 I try ever day and haven't once seen what Mike reported.  But, if
 Walter's bug is reproducible, I can try building with some different
 compiler versions.

I've not been able to reproduce Mike's problem in some time, but I was
able to get enough information from the times I could reproduce it to
determine that the bogus character was getting returned directly from
the _read() function.


 Other than that, going with the Windows native API seems like
 something we may have to try.

 Back to Walter's bug, does that come from reading from the console, or
 is it reading from a file?  Windows has always had problems with its
 low-level console implementation being so much different than the Unix
 implementation.  Which was one reason it was so hard to port Unix
 applications to Windows.

This one is from reading a file.  He redirects the dir command to a
file twice (same file).  When he tries to read this the second time,
it appears as if read() is still reading from the first file, but the
first few characters of the file are corrupt.  And it works for me
without error :-(


 Also, I have been searching for any references to similar problems in
 Windows.  One thing I did come up with is people talking about
 flushing the keyboard buffer when an application started up.  Reports
 of the buffer having garbage in it even though it was a new process
 starting up.  That would only apply if it was always the first read
 from the console that had the problem.  And I didn't think that was
 the case with Mike's problem.

It was the case in the situation where I was able to reproduce this.
It's almost like there are multiple active buffers and the function is
getting confused on which one to use.

Do you know that they used to flush this?  _fflush() and _flushall()
are stdio routines, not lowlevel I/O routines.  The only lowlevel
routine I found was _commit() which was not happy when I attempted to
use that on any stream!


Rick

 --
 Mark Miesfeld

 --
 Crystal Reports #45; New Free Runtime and 30 Day Trial
 Check out the new simplified licensign option that enables unlimited
 royalty#45;free distribution of the report engine for externally facing
 server and web deployment.
 http://p.sf.net/sfu/businessobjects
 ___
 Oorexx-devel mailing list
 Oorexx-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/oorexx-devel


--
Crystal Reports #45; New Free Runtime and 30 Day Trial
Check out the new simplified licensign option that enables unlimited
royalty#45;free distribution of the report engine for externally facing 
server and web deployment.
http://p.sf.net/sfu/businessobjects
___
Oorexx-devel mailing list
Oorexx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-devel


Re: [Oorexx-devel] Bizarre Windows I/O problems with the 4.0 beta.

2009-04-23 Thread Mark Miesfeld
On Thu, Apr 23, 2009 at 12:37 PM, Rick McGuire object.r...@gmail.com wrote:
 Answers below.

 On Thu, Apr 23, 2009 at 3:23 PM, Mark Miesfeld miesf...@gmail.com wrote:

 One other option, is to try building with VC++ 2003 and / or VC++
 2008.  I have both Visual Studios.  I think both of them will have a
 different CRT, maybe only slightly different.  I don't know how much
 change there is between versions, but there is some.

 That might be an interesting experiment to try, though I think I'd go
 to 2008 rather than 2003.

Yeah I thought 2008 might have some fixes in it.

What I could do is build a install package with 2008 and, if Mike was
willing, maybe over the weekend, he could try it and see if his
problem goes away.

 Do you know that they used to flush this?  _fflush() and _flushall()
 are stdio routines, not lowlevel I/O routines.  The only lowlevel
 routine I found was _commit() which was not happy when I attempted to
 use that on any stream!

I saw a couple variations where people wrote their own small function
to pull everything out of the buffer.  Let me see if I can find it
again.  The reason it caught my attention was that several different
people were independently reporting seeing a problem.

--
Mark Miesfeld

--
Crystal Reports #45; New Free Runtime and 30 Day Trial
Check out the new simplified licensign option that enables unlimited
royalty#45;free distribution of the report engine for externally facing 
server and web deployment.
http://p.sf.net/sfu/businessobjects
___
Oorexx-devel mailing list
Oorexx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-devel


[Oorexx-devel] Problem with ::requires 'BSF4Rexx' library

2009-04-23 Thread Rony G. Flatscher
Reworking the BSF4Rexx dynamic library, and in a first step defining a
RexxPackEntry using a RexxRoutineEntry with 13 entries of type
REXX_CLASSIC_ROUTINE only can be compiled and be used with the
RxFuncAdd() function. (There are no new type routines defined in the
source file yet.)

However, using

::requires BSF4Rexx library

causes an exception in the Open Object Rexx Interface.

I tried to isolate the problem and create a simple stand-alone testcase,
but unfortunately I cannot re-create that problem there.

One solution would be to upload the current set of files with a bug
report via the tracker, if deemed necessary.

Otherwise, this is what I can excerpt that relates to the definitions in
case that is sufficient already:

// External functions if loaded via Rexx
// Build the list of entry points for the routines:
RexxRoutineEntry bsf_external_functions[] =
{
REXX_CLASSIC_ROUTINE( BSF , BSF 
),
REXX_CLASSIC_ROUTINE( BsfAttachToTID  , BsfAttachToTID  
),
REXX_CLASSIC_ROUTINE( BsfDetach   , BsfDetach   
),
REXX_CLASSIC_ROUTINE( BsfDropFuncs, BsfDropFuncs
),
REXX_CLASSIC_ROUTINE( BsfGetTID   , BsfGetTID   
),
REXX_CLASSIC_ROUTINE( BsfInvokedBy, BsfInvokedBy
),
REXX_CLASSIC_ROUTINE( BsfLoadFuncs, BsfLoadFuncs
),
REXX_CLASSIC_ROUTINE( BsfLoadJava , BsfLoadJava 
),
REXX_CLASSIC_ROUTINE( BsfQueryAllFunctions, 
BsfQueryAllFunctions),
REXX_CLASSIC_ROUTINE( BsfQueryRegisteredFunctions , 
BsfQueryRegisteredFunctions ),
REXX_CLASSIC_ROUTINE( BsfShowErrorMessage , 
BsfShowErrorMessage ),
REXX_CLASSIC_ROUTINE( BsfUnloadJava   , BsfUnloadJava   
),
REXX_CLASSIC_ROUTINE( BsfVersion  , BsfVersion  
),
REXX_LAST_ROUTINE()
};

RexxPackageEntry bsf_package_entry =
{
STANDARD_PACKAGE_HEADER
REXX_INTERPRETER_4_0_0,  // anything including and 
after 4.0.0 will work
BSFLIB,// name of the package
4.0,   // package information
NULL,// no load function
NULL,// no unload function
bsf_external_functions,  // the exported functions
NULL // no exported methods
};

// The package loading stub.  OOREXX_GET_PACKAGE() is a macro that, 
basically,
// defines a function whose name is RexxGetPackage().  On Windows, this
// function, RexxGetPackage(), must be in the exports list of the .def 
file used
// when linking this library.
OOREXX_GET_PACKAGE(BSFLIB);
  

Would this information be already sufficient or shall I upload the files
with a bug report ?

---rony



--
Crystal Reports #45; New Free Runtime and 30 Day Trial
Check out the new simplified licensign option that enables unlimited
royalty#45;free distribution of the report engine for externally facing 
server and web deployment.
http://p.sf.net/sfu/businessobjects___
Oorexx-devel mailing list
Oorexx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-devel


Re: [Oorexx-devel] Problem with ::requires 'BSF4Rexx' library

2009-04-23 Thread Rick McGuire
I don't spot anything obviously wrong here, so you'll probably need to
upload everything.  Alternatively, since I know you occasionally build
from source, try running this in the debugger and attach a stack trace
to the bug report.

Rick

On Thu, Apr 23, 2009 at 4:49 PM, Rony G. Flatscher
rony.flatsc...@wu-wien.ac.at wrote:
 Reworking the BSF4Rexx dynamic library, and in a first step defining a
 RexxPackEntry using a RexxRoutineEntry with 13 entries of type
 REXX_CLASSIC_ROUTINE only can be compiled and be used with the RxFuncAdd()
 function. (There are no new type routines defined in the source file yet.)

 However, using

 ::requires BSF4Rexx library

 causes an exception in the Open Object Rexx Interface.

 I tried to isolate the problem and create a simple stand-alone testcase, but
 unfortunately I cannot re-create that problem there.

 One solution would be to upload the current set of files with a bug report
 via the tracker, if deemed necessary.

 Otherwise, this is what I can excerpt that relates to the definitions in
 case that is sufficient already:

 // External functions if loaded via Rexx
 // Build the list of entry points for the routines:
 RexxRoutineEntry bsf_external_functions[] =
 {
 REXX_CLASSIC_ROUTINE( BSF , BSF
 ),
 REXX_CLASSIC_ROUTINE( BsfAttachToTID  , BsfAttachToTID
 ),
 REXX_CLASSIC_ROUTINE( BsfDetach   , BsfDetach
 ),
 REXX_CLASSIC_ROUTINE( BsfDropFuncs, BsfDropFuncs
 ),
 REXX_CLASSIC_ROUTINE( BsfGetTID   , BsfGetTID
 ),
 REXX_CLASSIC_ROUTINE( BsfInvokedBy, BsfInvokedBy
 ),
 REXX_CLASSIC_ROUTINE( BsfLoadFuncs, BsfLoadFuncs
 ),
 REXX_CLASSIC_ROUTINE( BsfLoadJava , BsfLoadJava
 ),
 REXX_CLASSIC_ROUTINE( BsfQueryAllFunctions,
 BsfQueryAllFunctions),
 REXX_CLASSIC_ROUTINE( BsfQueryRegisteredFunctions ,
 BsfQueryRegisteredFunctions ),
 REXX_CLASSIC_ROUTINE( BsfShowErrorMessage ,
 BsfShowErrorMessage ),
 REXX_CLASSIC_ROUTINE( BsfUnloadJava   , BsfUnloadJava
 ),
 REXX_CLASSIC_ROUTINE( BsfVersion  , BsfVersion
 ),
 REXX_LAST_ROUTINE()
 };

 RexxPackageEntry bsf_package_entry =
 {
 STANDARD_PACKAGE_HEADER
 REXX_INTERPRETER_4_0_0,  // anything including and after
 4.0.0 will work
 BSFLIB,// name of the package
 4.0,   // package information
 NULL,// no load function
 NULL,// no unload function
 bsf_external_functions,  // the exported functions
 NULL // no exported methods
 };

 // The package loading stub.  OOREXX_GET_PACKAGE() is a macro that,
 basically,
 // defines a function whose name is RexxGetPackage().  On Windows, this
 // function, RexxGetPackage(), must be in the exports list of the .def
 file used
 // when linking this library.
 OOREXX_GET_PACKAGE(BSFLIB);


 Would this information be already sufficient or shall I upload the files
 with a bug report ?

 ---rony




 --
 Crystal Reports #45; New Free Runtime and 30 Day Trial
 Check out the new simplified licensign option that enables unlimited
 royalty#45;free distribution of the report engine for externally facing
 server and web deployment.
 http://p.sf.net/sfu/businessobjects
 ___
 Oorexx-devel mailing list
 Oorexx-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/oorexx-devel



--
Crystal Reports #45; New Free Runtime and 30 Day Trial
Check out the new simplified licensign option that enables unlimited
royalty#45;free distribution of the report engine for externally facing 
server and web deployment.
http://p.sf.net/sfu/businessobjects
___
Oorexx-devel mailing list
Oorexx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-devel


Re: [Oorexx-devel] Problem with ::requires 'BSF4Rexx' library

2009-04-23 Thread Rony G. Flatscher

Rick McGuire wrote:
 I don't spot anything obviously wrong here, so you'll probably need to
 upload everything.  Alternatively, since I know you occasionally build
 from source, try running this in the debugger and attach a stack trace
 to the bug report.
   
O.K., am on the run home. Will try do that either later in the night or
sometimes tomorrow evening, when I get a chance to run with a debugger
(haven't done that in ages, so it may take some time, although VA should
be of great help here).

---rony


--
Crystal Reports #45; New Free Runtime and 30 Day Trial
Check out the new simplified licensign option that enables unlimited
royalty#45;free distribution of the report engine for externally facing 
server and web deployment.
http://p.sf.net/sfu/businessobjects
___
Oorexx-devel mailing list
Oorexx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-devel


Re: [Oorexx-devel] Problem with ::requires 'BSF4Rexx' library

2009-04-23 Thread Rick McGuire
Assuming you have visual studio and you have a Rexx command that
creates the problem, just type

devenv /debugexe rexx yada yada yada

Hit PF5 to run, and it should stop at the location of the trap.

Rick

On Thu, Apr 23, 2009 at 5:04 PM, Rony G. Flatscher
rony.flatsc...@wu-wien.ac.at wrote:

 Rick McGuire wrote:
 I don't spot anything obviously wrong here, so you'll probably need to
 upload everything.  Alternatively, since I know you occasionally build
 from source, try running this in the debugger and attach a stack trace
 to the bug report.

 O.K., am on the run home. Will try do that either later in the night or
 sometimes tomorrow evening, when I get a chance to run with a debugger
 (haven't done that in ages, so it may take some time, although VA should
 be of great help here).

 ---rony


 --
 Crystal Reports #45; New Free Runtime and 30 Day Trial
 Check out the new simplified licensign option that enables unlimited
 royalty#45;free distribution of the report engine for externally facing
 server and web deployment.
 http://p.sf.net/sfu/businessobjects
 ___
 Oorexx-devel mailing list
 Oorexx-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/oorexx-devel


--
Crystal Reports #45; New Free Runtime and 30 Day Trial
Check out the new simplified licensign option that enables unlimited
royalty#45;free distribution of the report engine for externally facing 
server and web deployment.
http://p.sf.net/sfu/businessobjects
___
Oorexx-devel mailing list
Oorexx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-devel


Re: [Oorexx-devel] Problem with ::requires 'BSF4Rexx' library

2009-04-23 Thread Mark Miesfeld
On Thu, Apr 23, 2009 at 1:49 PM, Rony G. Flatscher
rony.flatsc...@wu-wien.ac.at wrote:

I don't know about the crash, but this isn't right:

 RexxPackageEntry bsf_package_entry =
 {
...
 OOREXX_GET_PACKAGE(BSFLIB);

That should be:

OOREXX_GET_PACKAGE(bsf);

--
Mark Miesfeld

--
Crystal Reports #45; New Free Runtime and 30 Day Trial
Check out the new simplified licensign option that enables unlimited
royalty#45;free distribution of the report engine for externally facing 
server and web deployment.
http://p.sf.net/sfu/businessobjects
___
Oorexx-devel mailing list
Oorexx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-devel


Re: [Oorexx-devel] Problem with ::requires 'BSF4Rexx' library

2009-04-23 Thread Rick McGuire
Good catch!  I wonder what this actually ended up pointing to.

Rick

On Thu, Apr 23, 2009 at 5:39 PM, Mark Miesfeld miesf...@gmail.com wrote:
 On Thu, Apr 23, 2009 at 1:49 PM, Rony G. Flatscher
 rony.flatsc...@wu-wien.ac.at wrote:

 I don't know about the crash, but this isn't right:

     RexxPackageEntry bsf_package_entry =
     {
 ...
     OOREXX_GET_PACKAGE(BSFLIB);

 That should be:

 OOREXX_GET_PACKAGE(bsf);

 --
 Mark Miesfeld

 --
 Crystal Reports #45; New Free Runtime and 30 Day Trial
 Check out the new simplified licensign option that enables unlimited
 royalty#45;free distribution of the report engine for externally facing
 server and web deployment.
 http://p.sf.net/sfu/businessobjects
 ___
 Oorexx-devel mailing list
 Oorexx-devel@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/oorexx-devel


--
Crystal Reports #45; New Free Runtime and 30 Day Trial
Check out the new simplified licensign option that enables unlimited
royalty#45;free distribution of the report engine for externally facing 
server and web deployment.
http://p.sf.net/sfu/businessobjects
___
Oorexx-devel mailing list
Oorexx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-devel


Re: [Oorexx-devel] Bizarre Windows I/O problems with the 4.0 beta.

2009-04-23 Thread Mark Miesfeld
On Thu, Apr 23, 2009 at 2:56 PM, Rick McGuire object.r...@gmail.com wrote:

 I've got a good start on converting SysFile to use the direct I/O
 functions.  I've got everything converted up to the getTimeStamp()
 methods, where I sort of hit a wall.  There are just a few things left
 to convert, so anything you can figure out about what functions to use
 would be really great.

Okay, I was just browing through your commit.  You did  a lot already.

I did just build the beta source tree with Visual Studio 2008 and its
running through the test suit right now.

--
Mark Miesfeld

--
Crystal Reports #45; New Free Runtime and 30 Day Trial
Check out the new simplified licensign option that enables unlimited
royalty#45;free distribution of the report engine for externally facing 
server and web deployment.
http://p.sf.net/sfu/businessobjects
___
Oorexx-devel mailing list
Oorexx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-devel


Re: [Oorexx-devel] Problem with ::requires 'BSF4Rexx' library

2009-04-23 Thread Rony G. Flatscher

Rick McGuire wrote:
 Good catch!  I wonder what this actually ended up pointing to.

 Rick

 On Thu, Apr 23, 2009 at 5:39 PM, Mark Miesfeld miesf...@gmail.com wrote:
   
 On Thu, Apr 23, 2009 at 1:49 PM, Rony G. Flatscher
 rony.flatsc...@wu-wien.ac.at wrote:

 I don't know about the crash, but this isn't right:

 
 RexxPackageEntry bsf_package_entry =
 {
   
 ...
 
 OOREXX_GET_PACKAGE(BSFLIB);
   
 That should be:

 OOREXX_GET_PACKAGE(bsf);
 
The exception still occurs.

Thanks a lot for the hint of how to use Visual Studio to debug, which I
obviously will need (will have to continue tomorrow evening, though,
already too late and have to get up very early).

---rony


--
Crystal Reports #45; New Free Runtime and 30 Day Trial
Check out the new simplified licensign option that enables unlimited
royalty#45;free distribution of the report engine for externally facing 
server and web deployment.
http://p.sf.net/sfu/businessobjects
___
Oorexx-devel mailing list
Oorexx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-devel