diff --git a/loader/task.c b/loader/task.c
index bda4626..31218b6 100644
--- a/loader/task.c
+++ b/loader/task.c
@@ -486,7 +486,7 @@
     memset( pTask->pdb.fileHandles, 0xff, sizeof(pTask->pdb.fileHandles) );
     pTask->pdb.environment    = hEnvironment;
     pTask->pdb.nbFiles        = 20;
-    lstrcpyn32A( pTask->pdb.cmdLine, cmdLine, 127 );
+    lstrcpyn32A( pTask->pdb.cmdLine, cmdLine, sizeof(pTask->pdb.cmdLine) );
 
       /* Get the compatibility flags */
 
@@ -839,7 +839,7 @@
          * es:bx  pointer to command-line inside PSP
          */
         EAX_reg(context) = 1;
-        EBX_reg(context) = 0x81;
+        EBX_reg(context) = pTask->pdb.cmdLine[0] ? 0x81 : 0x80;
         ECX_reg(context) = pModule->stack_size;
         EDX_reg(context) = pTask->nCmdShow;
         ESI_reg(context) = (DWORD)pTask->hPrevInstance;
@@ -1005,7 +1005,8 @@
 {
     BYTE *thunk,*lfunc;
     SEGPTR thunkaddr;
-    
+
+    if (!hInstance) return 0;
     if (__winelib) return func; /* func can be called directly in Winelib */
     thunkaddr = TASK_AllocThunk( hCurrentTask );
     if (!thunkaddr) return (FARPROC16)0;
@@ -1358,8 +1359,8 @@
 WORD WINAPI SetSigHandler( FARPROC16 newhandler, FARPROC16* oldhandler,
                            UINT16 *oldmode, UINT16 newmode, UINT16 flag )
 {
-    fprintf(stdnimp,"SetSigHandler(%p,%p,%p,%d,%d), unimplemented.\n",
-            newhandler,oldhandler,oldmode,newmode,flag );
+    FIXME(task,"(%p,%p,%p,%d,%d), unimplemented.\n",
+	  newhandler,oldhandler,oldmode,newmode,flag );
 
     if (flag != 1) return 0;
     if (!newmode) newhandler = NULL;  /* Default handler */
