]> git.sur5r.net Git - cc65/commitdiff
Set errno if the stream is in error state. Small code size improvements. Fixed
authoruz <uz@b7a2c559-68d2-44c3-8de9-860c34a00d81>
Thu, 3 Jun 2010 21:22:51 +0000 (21:22 +0000)
committeruz <uz@b7a2c559-68d2-44c3-8de9-860c34a00d81>
Thu, 3 Jun 2010 21:22:51 +0000 (21:22 +0000)
comment regarding _oserror.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4699 b7a2c559-68d2-44c3-8de9-860c34a00d81

libsrc/common/fwrite.s

index 586960d507ac33ecabd7205798738b34c0de0471..37cf8101577623de80ff80a0cd7c7d0d2a6cbca9 100644 (file)
@@ -19,7 +19,7 @@
 
 ; ------------------------------------------------------------------------
 ; Code
-
+                                                          
 .proc   _fwrite
 
 ; Save file and place it into ptr1
 
 ; File not open
 
-       lda     #EINVAL
-        jsr     __seterrno
-@L1:    jsr     incsp6
-        jmp     return0
+@L1:    lda    #EBADF
+        jsr     __seterrno              ; Returns with A = 0
+        tax                             ; A = X = 0
+        jmp     incsp6
 
 ; Check if the stream is in an error state
 
@@ -93,8 +93,8 @@
         cmp     #$FF
         bne     @L4
 
-; Error in write. Set the stream error flag and bail out. _oserror and/or
-; errno are already set by write().
+; Error in write. Set the stream error flag and bail out. errno is already
+; set by write().
 
         lda     file
         sta     ptr1