From 18f66c8f9c8586a4aa5dcb38097b13730ec298cf Mon Sep 17 00:00:00 2001 From: Juuso Lapinlampi Date: Sun, 29 May 2016 08:41:06 +0000 Subject: Response: Return 500 Internal Server Error on error() Fix a bug where Response class `error()` function may blow up and return an invalid HTTP status code `42` if `PDO::ATTR_ERRMODE` is set to `PDO::ERRMODE_EXCEPTION` during PDO initialization or query. By default, it is implicitly set to `PDO::ERRMODE_SILENT`. This bug can occur when a MySQL server is running, but encounters an error post-login (e.g. table doesn't exist). --- static/classes/Response.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'static/classes') diff --git a/static/classes/Response.class.php b/static/classes/Response.class.php index 27dbd74..b563e66 100755 --- a/static/classes/Response.class.php +++ b/static/classes/Response.class.php @@ -78,7 +78,7 @@ class Response break; } - http_response_code($code); + http_response_code(500); // "500 Internal Server Error" echo $response; } -- cgit v1.2.3 From cc75d1e159d213c3f89725df070ae8f7f83bc00b Mon Sep 17 00:00:00 2001 From: Juuso Lapinlampi Date: Wed, 25 May 2016 03:12:40 +0000 Subject: Response: Clarify what http_response_code(200); is Add a comment explaining how HTTP status code 200 means success. Cherry-picked from master 4606553f38909b483bc06674f9558ede1a9ff1f6. --- static/classes/Response.class.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'static/classes') diff --git a/static/classes/Response.class.php b/static/classes/Response.class.php index b563e66..eed8ce7 100755 --- a/static/classes/Response.class.php +++ b/static/classes/Response.class.php @@ -101,7 +101,7 @@ class Response break; } - http_response_code(200); + http_response_code(200); // "200 OK". Success. echo $response; } -- cgit v1.2.3