]> granicus.if.org Git - php/commitdiff
Signal an error condition, if write was unable to perform the complete
authorSascha Schumann <sas@php.net>
Fri, 22 Dec 2000 19:26:02 +0000 (19:26 +0000)
committerSascha Schumann <sas@php.net>
Fri, 22 Dec 2000 19:26:02 +0000 (19:26 +0000)
operation.

ext/standard/file.c

index 278282d721d95c360c1a26baa180445fb0d40037..6eab2d14dbef97c6e98c1ae525c25ec5cf43225b 100644 (file)
@@ -1688,8 +1688,8 @@ PHPAPI int php_copy_file(char *src, char *dest)
                }
                srcfile = mmap(NULL, sbuf.st_size, PROT_READ, MAP_SHARED, fd_s, 0);
                if (srcfile != (void *) MAP_FAILED) {
-                       write(fd_t, srcfile, sbuf.st_size);
-                       ret = SUCCESS;
+                       if (write(fd_t, srcfile, sbuf.st_size) == sbuf.st_size)
+                               ret = SUCCESS;
                        munmap(srcfile, sbuf.st_size);
                        goto cleanup;
                }