First Commit
[librecmc/package-feed.git] / lang / php7-pecl-dio / patches / 0006-Replace-ZEND_FETCH_RESOURCE-macro-with-zend_fetch_re.patch
1 From b69e1067f70ef293587b72979193e68b01d90902 Mon Sep 17 00:00:00 2001
2 From: Michael Heimpold <mhei@heimpold.de>
3 Date: Wed, 13 Jul 2016 00:23:29 +0200
4 Subject: [PATCH 06/16] Replace ZEND_FETCH_RESOURCE macro with
5  zend_fetch_resource
6
7 Signed-off-by: Michael Heimpold <mhei@heimpold.de>
8 ---
9  dio.c | 36 +++++++++++++++++++++++++++---------
10  1 file changed, 27 insertions(+), 9 deletions(-)
11
12 diff --git a/dio.c b/dio.c
13 index 408a171..6b687ac 100644
14 --- a/dio.c
15 +++ b/dio.c
16 @@ -161,7 +161,9 @@ PHP_FUNCTION(dio_dup)
17                 return;
18         }
19  
20 -       ZEND_FETCH_RESOURCE(f, php_fd_t *, &r_fd, -1, le_fd_name, le_fd);
21 +       if ((f = (php_fd_t *)zend_fetch_resource(Z_RES_P(r_fd), le_fd_name, le_fd)) == NULL) {
22 +               RETURN_FALSE;
23 +       }
24  
25         dfd = dup(f->fd);
26         if (dfd == -1) {
27 @@ -192,7 +194,9 @@ PHP_FUNCTION(dio_read)
28                 return;
29         }
30  
31 -       ZEND_FETCH_RESOURCE(f, php_fd_t *, &r_fd, -1, le_fd_name, le_fd);
32 +       if ((f = (php_fd_t *)zend_fetch_resource(Z_RES_P(r_fd), le_fd_name, le_fd)) == NULL) {
33 +               RETURN_FALSE;
34 +       }
35  
36         if (bytes <= 0) {
37                 php_error_docref(NULL TSRMLS_CC, E_WARNING, "Length parameter must be greater than 0.");
38 @@ -233,7 +237,9 @@ PHP_FUNCTION(dio_write)
39                 RETURN_FALSE;
40         }
41  
42 -       ZEND_FETCH_RESOURCE(f, php_fd_t *, &r_fd, -1, le_fd_name, le_fd);
43 +       if ((f = (php_fd_t *)zend_fetch_resource(Z_RES_P(r_fd), le_fd_name, le_fd)) == NULL) {
44 +               RETURN_FALSE;
45 +       }
46  
47         res = write(f->fd, data, trunc_len ? trunc_len : data_len);
48         if (res == -1) {
49 @@ -258,7 +264,9 @@ PHP_FUNCTION(dio_truncate)
50                 return;
51         }
52  
53 -       ZEND_FETCH_RESOURCE(f, php_fd_t *, &r_fd, -1, le_fd_name, le_fd);
54 +       if ((f = (php_fd_t *)zend_fetch_resource(Z_RES_P(r_fd), le_fd_name, le_fd)) == NULL) {
55 +               RETURN_FALSE;
56 +       }
57  
58         if (ftruncate(f->fd, offset) == -1) {
59                 php_error_docref(NULL TSRMLS_CC, E_WARNING, "couldn't truncate %d to %ld bytes: %s", f->fd, offset, strerror(errno));
60 @@ -284,7 +292,9 @@ PHP_FUNCTION(dio_stat)
61                 return;
62         }
63  
64 -       ZEND_FETCH_RESOURCE(f, php_fd_t *, &r_fd, -1, le_fd_name, le_fd);
65 +       if ((f = (php_fd_t *)zend_fetch_resource(Z_RES_P(r_fd), le_fd_name, le_fd)) == NULL) {
66 +               RETURN_FALSE;
67 +       }
68  
69         if (fstat(f->fd, &s) == -1) {
70                 php_error_docref(NULL TSRMLS_CC, E_WARNING, "cannot stat %d: %s", f->fd, strerror(errno));
71 @@ -323,7 +333,9 @@ PHP_FUNCTION(dio_seek)
72                 return;
73         }
74  
75 -       ZEND_FETCH_RESOURCE(f, php_fd_t *, &r_fd, -1, le_fd_name, le_fd);
76 +       if ((f = (php_fd_t *)zend_fetch_resource(Z_RES_P(r_fd), le_fd_name, le_fd)) == NULL) {
77 +               RETURN_FALSE;
78 +       }
79  
80         RETURN_LONG(lseek(f->fd, offset, whence));
81  }
82 @@ -344,7 +356,9 @@ PHP_FUNCTION(dio_fcntl)
83                 return;
84         }
85  
86 -       ZEND_FETCH_RESOURCE(f, php_fd_t *, &r_fd, -1, le_fd_name, le_fd);
87 +       if ((f = (php_fd_t *)zend_fetch_resource(Z_RES_P(r_fd), le_fd_name, le_fd)) == NULL) {
88 +               RETURN_FALSE;
89 +       }
90  
91         switch (cmd) {
92                 case F_SETLK:
93 @@ -454,7 +468,9 @@ PHP_FUNCTION(dio_tcsetattr)
94                 return;
95         }
96  
97 -       ZEND_FETCH_RESOURCE(f, php_fd_t *, &r_fd, -1, le_fd_name, le_fd);
98 +       if ((f = (php_fd_t *)zend_fetch_resource(Z_RES_P(r_fd), le_fd_name, le_fd)) == NULL) {
99 +               RETURN_FALSE;
100 +       }
101  
102         if (Z_TYPE_P(arg) != IS_ARRAY) {
103                 php_error_docref(NULL TSRMLS_CC, E_WARNING,"tcsetattr, third argument should be an associative array");
104 @@ -639,7 +655,9 @@ PHP_FUNCTION(dio_close)
105                 return;
106         }
107  
108 -       ZEND_FETCH_RESOURCE(f, php_fd_t *, &r_fd, -1, le_fd_name, le_fd);
109 +       if ((f = (php_fd_t *)zend_fetch_resource(Z_RES_P(r_fd), le_fd_name, le_fd)) == NULL) {
110 +               RETURN_FALSE;
111 +       }
112  
113         zend_list_delete(Z_LVAL_P(r_fd));
114  }
115 -- 
116 2.5.0
117