]> git.kaiwu.me - njs.git/commitdiff
Improved reading of pseudofiles.
authorDmitry Volyntsev <xeioex@nginx.com>
Fri, 17 Apr 2020 17:04:18 +0000 (17:04 +0000)
committerDmitry Volyntsev <xeioex@nginx.com>
Fri, 17 Apr 2020 17:04:18 +0000 (17:04 +0000)
src/njs_fs.c

index 1f231263f07308730dbcf12a70f883bcc12960a6..2d63452b67aa4c514b3ff7272a301aaa03ac0310 100644 (file)
@@ -233,6 +233,12 @@ njs_fs_read_file(njs_vm_t *vm, njs_value_t *args, njs_uint_t nargs,
             goto done;
         }
 
+        if (njs_slow_path(data.length < size)) {
+            /* Pseudo-files may return less data than declared by st_size. */
+            njs_string_truncate(&retval, data.length);
+        }
+
+        size = data.length;
         start = data.start;
 
     } else {