--- php-4.0.3pl1/Zend/zend-scanner.c.orig Wed Nov 22 10:52:01 2000 +++ php-4.0.3pl1/Zend/zend-scanner.c Wed Nov 22 10:57:35 2000 @@ -2845,10 +2845,11 @@ if (!file_path) { file_path = file_handle->filename; } - file_handle->type = ZEND_HANDLE_FP; - if (file_handle->handle.fp != stdin) { + if (file_handle->handle.fp != stdin && + file_handle->type != ZEND_HANDLE_FP) { zend_llist_add_element(&CG(open_files), file_handle); } + file_handle->type = ZEND_HANDLE_FP; /* Reset the scanner for scanning the new file */ yyin = file_handle->handle.fp; yy_switch_to_buffer(yy_create_buffer(yyin, YY_BUF_SIZE));