Opened 12 months ago
Closed 9 months ago
#21103 closed defect (bug) (fixed)
error_log() not called in wp-db.php when error_log setting is empty
| Reported by: |
|
Owned by: |
|
|---|---|---|---|
| Priority: | normal | Milestone: | 3.5 |
| Component: | Database | Version: | 3.4 |
| Severity: | normal | Keywords: | has-patch 2nd-opinion |
| Cc: |
Description
The fix for #5771 is still not right. If the error_log setting in php.ini is empty (the default), errors should still be logged. (See http://www.php.net/manual/en/errorfunc.configuration.php#ini.error-log.) But in this case, ini_get('error_log') returns an empty string, so the iswritable check in wp-includes/wp-db.php line 935 (WordPress 3.4) fails and nothing is logged. Probably, there should be an test for empty string just as there is for 'syslog'.
Patch attached.
Attachments (1)
Change History (6)
comment:1
apimlott
— 12 months ago
I was wrong about one thing. The is_writable check doesn't fail, it fails earlier because the empty return from ini_get is considered false. That's why I pulled the call to ini_get out of the condition.
comment:2
wonderboymusic
— 10 months ago
- Keywords has-patch added
comment:3
nacin
— 10 months ago
- Keywords 2nd-opinion added
- Milestone changed from Awaiting Review to 3.5
Can't we just always call error_log()? The conditional, function_exists, and error suppression all seem unnecessary.
comment:4
wonderboymusic
— 10 months ago
yeah, the whole thing looks like overkill
Patch against WordPress 3.4