Bug #16757 Updated: setting server_name to NULL doesn't work

From: Date: Sat, 27 Apr 2002 10:13:17 +0000
Subject: Bug #16757 Updated: setting server_name to NULL doesn't work
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-6217@lists.php.net to get a copy of this message
ID: 16757 Updated by: phanto@php.net Reported By: msisolak@yahoo.com -Status: Open +Status: Closed Bug Type: COM related Operating System: Windows 2000 PHP Version: 4.2.0 New Comment: This bug has been fixed in CVS. Previous Comments: ------------------------------------------------------------------------ [2002-04-23 11:20:24] msisolak@yahoo.com In 4.2 you can no longer set server_name to NULL (which you need to do if you just want to set the codepage). The problem is the code that was added to 4.2 to process server_name as an ARRAY. In 4.1.2 the code looked like this (COM.c, line 486): if (server_name != NULL) { if (Z_TYPE_P(server_name) == IS_NULL) { server_name = NULL; } else { if (!INI_INT("com.allow_dcom")) { php_error(E_WARNING, "DCOM is disabled"); RETURN_FALSE; } else { convert_to_string_ex(&server_name); } } } In the 4.2.0 COM.c, the new flags variable set and IS_ARRAY check was added before the IS_NULL check, instead of inside the else branch - thus flags is set to remote invocation, even if server_name is NULL. To fix this I moved everything below "if (server_name != NULL)" and above "if (Z_TYPE_P(server_name) == IS_NULL) {" to after "} else {". ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=16757&edit=1

« previous php.bugs (#6217) next »