SYN SYN
[p5sagit/p5-mst-13.2.git] / os2 / os2.c
index 45e1d2f..c324cf2 100644 (file)
--- a/os2/os2.c
+++ b/os2/os2.c
@@ -1123,9 +1123,9 @@ fork(void)
 #endif
 
 /*******************************************************************/
-/* not implemented in EMX 0.9a */
+/* not implemented in EMX 0.9d */
 
-void * ctermid(x)      { return 0; }
+char * ctermid(char *s)        { return 0; }
 
 #ifdef MYTTYNAME /* was not in emx0.9a */
 void * ttyname(x)      { return 0; }
@@ -1718,17 +1718,20 @@ XS(XS_OS2_Process_Messages)
     {
        bool  force = SvOK(ST(0));
        unsigned long   cnt;
-       I32 *cntp = NULL;
 
        if (items == 2) {
+           I32 cntr;
            SV *sv = ST(1);
            int fake = SvIV(sv);        /* Force SvIVX */
            
            if (!SvIOK(sv))
                Perl_croak_nocontext("Can't upgrade count to IV");
-           cntp = &SvIVX(sv);
-       }
-       cnt =  Perl_Process_Messages(force, cntp);
+           cntr = SvIVX(sv);
+           cnt =  Perl_Process_Messages(force, &cntr);
+           SvIVX(sv) = cntr;
+       } else {
+           cnt =  Perl_Process_Messages(force, NULL);
+        }
        ST(0) = sv_newmortal();
        sv_setiv(ST(0), cnt);
     }