Bug #41577 [Com]: DOTNET is successful once per server run

From: Date: Thu, 13 Mar 2014 15:21:00 +0000
Subject: Bug #41577 [Com]: DOTNET is successful once per server run
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-184774@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=41577&edit=1 ID: 41577 Comment by: a dot kasparas at gmc dot lt Reported by: boen dot robot at gmail dot com Summary: DOTNET is successful once per server run Status: Open Type: Bug Package: COM related Operating System: Windows XP Professional SP2 PHP Version: 5CVS-2007-06-03 (snap) Block user comment: N Private report: N New Comment: In the present form DOTNET class is completely unuseable in FastCGI scenario, as it crashes php-cgi.exe process on every second request. Both patches submitted to this bug solve crashing. Therefore, please apply any of them to master source. Previous Comments: ------------------------------------------------------------------------ [2013-02-16 09:37:20] ku at digitaldolphins dot jp Is it good idea to disable release action in rshutdown? --- void php_com_dotnet_rshutdown(TSRMLS_D) { struct dotnet_runtime_stuff *stuff = COMG(dotnet_runtime_stuff); if (stuff->dotnet_domain) { // IDispatch_Release(stuff->dotnet_domain); // stuff->dotnet_domain = NULL; } } --- My own php 5.4.11 build works well with this workaround. Any possible side effects? Thanks ------------------------------------------------------------------------ [2013-02-14 06:22:16] ku at digitaldolphins dot jp I have this problem too. It seems that the access to the released pointer may cause it. line 233 in C:\php-sdk\php54dev\vc9\x86\php-5.4.11\ext\com_dotnet\com_dotnet.c --- hr = stuff->dotnet_domain->lpVtbl->CreateInstance(stuff->dotnet_domain, oleassembly_sys, oletype_sys, &unk); --- stuff->dotnet_domain is released in both php_com_dotnet_rshutdown and php_com_dotnet_mshutdown. However it would not be recovered for further requests. Either rinit or com_dotnet_create_instance may need check for pointer access. Thanks ------------------------------------------------------------------------ [2008-06-03 16:32:00] sam at bitopia dot co dot uk I had this problem, and finally managed to solve it by running php as cgi instead of an apache module, google for how to do it, but basically it's disabling the apache module, then adding three lines in the apache conf ------------------------------------------------------------------------ [2008-01-28 19:58:33] jthorpe at statestreet dot com I am also experiencing this problem. Here's the crash message... Unhandled exception at 0x00ad736d in httpd.exe: 0xC0000005: Access violation reading location 0x00000000. and the end of the call stack... > php5ts.dll!00ad736d() ntdll.dll!7c91056d() user32.dll!7e419951() ntdll.dll!7c910833() ntdll.dll!7c910833() ------------------------------------------------------------------------ [2007-12-20 16:52:03] heathfrankel at internode dot on dot net Is this related http://support.microsoft.com/kb/837318? ------------------------------------------------------------------------ The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at https://bugs.php.net/bug.php?id=41577 -- Edit this bug report at https://bugs.php.net/bug.php?id=41577&edit=1

« previous php.bugs (#184774) next »