]> granicus.if.org Git - php/commitdiff
Merge branch 'PHP-7.4' into master
authorChristoph M. Becker <cmbecker69@gmx.de>
Thu, 27 Aug 2020 08:25:01 +0000 (10:25 +0200)
committerChristoph M. Becker <cmbecker69@gmx.de>
Thu, 27 Aug 2020 08:26:15 +0000 (10:26 +0200)
* PHP-7.4:
  Catch potential exceptions during to string conversion

1  2 
ext/com_dotnet/com_com.c
ext/com_dotnet/com_saproxy.c

index 7a9848192769895edb6f1983f0e1f9d59d8f05ec,ce4bca9d871e2ac4155c1584a1a34507a86cd6c8..99a217342aff7d0008ccc02ebaf125583837f419
@@@ -81,7 -85,9 +81,9 @@@ PHP_METHOD(com, __construct
  
                if (NULL != (tmp = zend_hash_str_find(Z_ARRVAL_P(server_params),
                                "Server", sizeof("Server")-1))) {
-                       convert_to_string_ex(tmp);
+                       if (!try_convert_to_string(tmp)) {
 -                              return;
++                              RETURN_THROWS();
+                       }
                        server_name = Z_STRVAL_P(tmp);
                        server_name_len = Z_STRLEN_P(tmp);
                        ctx = CLSCTX_REMOTE_SERVER;
  
                if (NULL != (tmp = zend_hash_str_find(Z_ARRVAL_P(server_params),
                                "Username", sizeof("Username")-1))) {
-                       convert_to_string_ex(tmp);
+                       if (!try_convert_to_string(tmp)) {
 -                              return;
++                              RETURN_THROWS();
+                       }
                        user_name = Z_STRVAL_P(tmp);
                        user_name_len = Z_STRLEN_P(tmp);
                }
  
                if (NULL != (tmp = zend_hash_str_find(Z_ARRVAL_P(server_params),
                                "Password", sizeof("Password")-1))) {
-                       convert_to_string_ex(tmp);
+                       if (!try_convert_to_string(tmp)) {
 -                              return;
++                              RETURN_THROWS();
+                       }
                        password = Z_STRVAL_P(tmp);
                        password_len = Z_STRLEN_P(tmp);
                }
  
                if (NULL != (tmp = zend_hash_str_find(Z_ARRVAL_P(server_params),
                                "Domain", sizeof("Domain")-1))) {
-                       convert_to_string_ex(tmp);
+                       if (!try_convert_to_string(tmp)) {
 -                              return;
++                              RETURN_THROWS();
+                       }
                        domain_name = Z_STRVAL_P(tmp);
                        domain_name_len = Z_STRLEN_P(tmp);
                }
@@@ -715,7 -728,9 +723,9 @@@ PHP_FUNCTION(com_event_sink
                if ((tmp = zend_hash_index_find(Z_ARRVAL_P(sink), 1)) != NULL && Z_TYPE_P(tmp) == IS_STRING)
                        dispname = Z_STRVAL_P(tmp);
        } else if (sink != NULL) {
-               convert_to_string(sink);
+               if (!try_convert_to_string(sink)) {
 -                      return;
++                      RETURN_THROWS();
+               }
                dispname = Z_STRVAL_P(sink);
        }
  
Simple merge