First Commit
[librecmc/package-feed.git] / lang / php7-pecl-dio / patches / 0013-Fix-tests-for-legacy-interface.patch
1 From 942b77d84417298fb9e99c216029f22fbd1e2d98 Mon Sep 17 00:00:00 2001
2 From: Michael Heimpold <mhei@heimpold.de>
3 Date: Thu, 14 Jul 2016 01:47:05 +0200
4 Subject: [PATCH 13/16] Fix tests for legacy interface
5
6 Signed-off-by: Michael Heimpold <mhei@heimpold.de>
7 ---
8  dio.c | 16 ++++++++++------
9  1 file changed, 10 insertions(+), 6 deletions(-)
10
11 diff --git a/dio.c b/dio.c
12 index 7bad575..1a130a2 100644
13 --- a/dio.c
14 +++ b/dio.c
15 @@ -73,9 +73,9 @@ static int new_php_fd(php_fd_t **f, int fd)
16         return 1;
17  }
18  
19 -static void _dio_close_fd(zend_resource *res)
20 +static void _dio_close_fd(zend_resource *rsrc)
21  {
22 -       php_fd_t *f = (php_fd_t *)zend_fetch_resource(res, NULL, le_fd);
23 +       php_fd_t *f = (php_fd_t *)rsrc->ptr;
24         if (f) {
25                 close(f->fd);
26                 free(f);
27 @@ -87,8 +87,8 @@ static void _dio_close_fd(zend_resource *res)
28  PHP_FUNCTION(dio_open)
29  {
30         php_fd_t *f;
31 -       char     *file_name;
32 -       int       file_name_length;
33 +       char     *file_name = NULL;
34 +       size_t    file_name_length = 0;
35         long      flags;
36         long      mode = 0;
37         int       fd;
38 @@ -97,6 +97,10 @@ PHP_FUNCTION(dio_open)
39                 return;
40         }
41  
42 +       if (!file_name || file_name[0] == '\0') {
43 +               RETURN_FALSE;
44 +       }
45 +
46         if (php_check_open_basedir(file_name) || DIO_SAFE_MODE_CHECK(file_name, "wb+")) {
47                 RETURN_FALSE;
48         }
49 @@ -176,7 +180,7 @@ PHP_FUNCTION(dio_dup)
50                 RETURN_FALSE;
51         }
52  
53 -       RETVAL_RES(zend_register_resource(f, le_fd));
54 +       RETVAL_RES(zend_register_resource(df, le_fd));
55  }
56  /* }}} */
57  #endif
58 @@ -660,7 +664,7 @@ PHP_FUNCTION(dio_close)
59                 RETURN_FALSE;
60         }
61  
62 -       zend_list_delete(Z_LVAL_P(r_fd));
63 +       zend_list_delete(Z_RES_P(r_fd));
64  }
65  /* }}} */
66  
67 -- 
68 2.5.0
69