Edit report at https://bugs.php.net/bug.php?id=60232&edit=1
ID: 60232 Updated by: [email protected] Reported by: goetas at lignano dot it Summary: Wrong lock support detection for streams -Status: Open +Status: Bogus Type: Bug Package: Streams related Operating System: ubuntu PHP Version: 5.3.8 Block user comment: N Private report: N New Comment: Thank you for taking the time to write to us, but this is not a bug. Please double-check the documentation available at http://www.php.net/manual/ and the instructions on how to report a bug at http://bugs.php.net/how-to-report.php The stream_support_locking() merely checks if stream->fd is present, it does not "actually" check if locking is supported. Therefor the check is actually correct. Previous Comments: ------------------------------------------------------------------------ [2011-11-16 19:26:12] goetas at lignano dot it in file.c there is a double check for stream locking support, but the first check is done in the worong way. i'm not a c programmer, i think that should be done somethink like this if(file_lock) then if(is_stream && !stream_support_locking) then throw error endif endif ------------------------------------------------------------------------ [2011-11-16 12:32:17] [email protected] The first check was introduced to fix the issue reported in bug #44501. ------------------------------------------------------------------------ [2011-11-07 12:04:03] goetas at lignano dot it Description: ------------ I have implemented my own stream that support locking (defined the function stream_lock). when use: file_put_contents("sqlfile://www.pppoa.it/x", "", LOCK_EX); I get this error: Exclusive locks may only be set for regular files I've take a look into PHP_5_3/ext/standard/file.c, and at line 620 there is a check, that generates this error. Few lines after, at line 635 there is a second check, for stream lock support. But these lines of code (635...) is newer reachable because all operations on stream that require locking will stop on line 623. ------------------------------------------------------------------------ -- Edit this bug report at https://bugs.php.net/bug.php?id=60232&edit=1
