I've patched the Sep99 release of Hugs98, as per
various requests.

There are three changes.

(1) configure has been marked as executable.

(2) The MS-CR/LF end-of-lines have been replaced
    with Unix style end-of-lines.

(3) The problem with hPutStr has been fixed.
    diff included below, for the interested.

The patched version can get obtained from the web pages.

Cheers,

Andy Gill

----------------------------------------------------------------------
Patch to iomonad.c, in the primHPutStr function.

(Do not just remove the two pushes, because this can
lead to a problem if GC occurs during the evaluation
of the string argument.)

***************
*** 566,574 ****
      Int h;
      HandleArg(h,4);
!     drop();
!     push(primArg(4));                 /* duplicate the handle before     */
!                                       /* possible GC inside String eval  */
!     push(primArg(2));                 /* and copy the String back onto   */
!                                       /* the top of the stack            */
      if (handles[h].hmode&(HWRITE|HAPPEND)) {
        blackHoleRoot();
--- 566,571 ----
      Int h;
      HandleArg(h,4);
!     push(primArg(3));
!     primArg(3) = NIL;
      if (handles[h].hmode&(HWRITE|HAPPEND)) {
        blackHoleRoot();

Reply via email to