diff options
| author | Nikita Popov <nikita.ppv@gmail.com> | 2019-07-16 16:40:54 +0200 |
|---|---|---|
| committer | Nikita Popov <nikita.ppv@gmail.com> | 2019-07-16 16:44:37 +0200 |
| commit | 49bac9b77bc9cacc0f984092d226e951ae336b43 (patch) | |
| tree | f705f93aa693fc5e0ea5c44231585fd41f42dd57 /Zend | |
| parent | 46faf8f018e95de27873dbcf7c094af18c4c08e4 (diff) | |
| download | php-git-49bac9b77bc9cacc0f984092d226e951ae336b43.tar.gz | |
Introduce zend_stream_init_filename()
Avoid more ad-hoc initialization of zend_file_handle structures.
Diffstat (limited to 'Zend')
| -rw-r--r-- | Zend/zend_language_scanner.l | 11 | ||||
| -rw-r--r-- | Zend/zend_stream.c | 6 | ||||
| -rw-r--r-- | Zend/zend_stream.h | 1 |
3 files changed, 9 insertions, 9 deletions
diff --git a/Zend/zend_language_scanner.l b/Zend/zend_language_scanner.l index 5824b6b763..5526a0a0b3 100644 --- a/Zend/zend_language_scanner.l +++ b/Zend/zend_language_scanner.l @@ -659,11 +659,7 @@ zend_op_array *compile_filename(int type, zval *filename) ZVAL_STR(&tmp, zval_get_string(filename)); filename = &tmp; } - file_handle.filename = Z_STRVAL_P(filename); - file_handle.free_filename = 0; - file_handle.type = ZEND_HANDLE_FILENAME; - file_handle.opened_path = NULL; - file_handle.handle.fp = NULL; + zend_stream_init_filename(&file_handle, Z_STRVAL_P(filename)); retval = zend_compile_file(&file_handle, type); if (retval && file_handle.handle.stream.handle) { @@ -789,10 +785,7 @@ int highlight_file(char *filename, zend_syntax_highlighter_ini *syntax_highlight zend_lex_state original_lex_state; zend_file_handle file_handle; - file_handle.type = ZEND_HANDLE_FILENAME; - file_handle.filename = filename; - file_handle.free_filename = 0; - file_handle.opened_path = NULL; + zend_stream_init_filename(&file_handle, filename); zend_save_lexical_state(&original_lex_state); if (open_file_for_scanning(&file_handle)==FAILURE) { zend_message_dispatcher(ZMSG_FAILED_HIGHLIGHT_FOPEN, filename); diff --git a/Zend/zend_stream.c b/Zend/zend_stream.c index fc0523ee96..08a1db2583 100644 --- a/Zend/zend_stream.c +++ b/Zend/zend_stream.c @@ -101,6 +101,12 @@ ZEND_API void zend_stream_init_fp(zend_file_handle *handle, FILE *fp, const char handle->filename = filename; } +ZEND_API void zend_stream_init_filename(zend_file_handle *handle, const char *filename) { + memset(handle, 0, sizeof(zend_file_handle)); + handle->type = ZEND_HANDLE_FILENAME; + handle->filename = filename; +} + ZEND_API int zend_stream_open(const char *filename, zend_file_handle *handle) /* {{{ */ { if (zend_stream_open_function) { diff --git a/Zend/zend_stream.h b/Zend/zend_stream.h index 1438a51dea..18b07d6b3c 100644 --- a/Zend/zend_stream.h +++ b/Zend/zend_stream.h @@ -70,6 +70,7 @@ typedef struct _zend_file_handle { BEGIN_EXTERN_C() ZEND_API void zend_stream_init_fp(zend_file_handle *handle, FILE *fp, const char *filename); +ZEND_API void zend_stream_init_filename(zend_file_handle *handle, const char *filename); ZEND_API int zend_stream_open(const char *filename, zend_file_handle *handle); ZEND_API int zend_stream_fixup(zend_file_handle *file_handle, char **buf, size_t *len); ZEND_API void zend_file_handle_dtor(zend_file_handle *fh); |
