Oh no! Where's the JavaScript?
Your Web browser does not have JavaScript enabled or does not support JavaScript. Please enable JavaScript on your Web browser to properly view this Web site, or upgrade to a Web browser that does support JavaScript.
Not a member yet? Click here to register.
Forgot Password?

mysqli_functions_include.php - dbconnection() will never return a connection

Asked Modified Viewed 757 times
M
Mickelvlm
M
  • Junior Member, joined since
  • Contributed 10 posts on the community forums.
  • Started 6 threads in the forums
  • Started this discussions
asked
Junior Member

(Edit: I've referenced 8.00.22 because it's the newest code on Github, but as far as I can tell, the bug is present in both .21 and .22)

The error
The MySQLi and PDO database handlers both have a function like this:
mysqli_functions_include.php #L139 - #L145
i.imgur.com/WzXzwGk.png


dbconnection() is currently called only one place outside of the handlers themselves:
maincore.php #L1136
i.imgur.com/OsPTr9T.png


function_get_settings() is however very dependant on the dbconnection() static variable being initialized. In pdo_functions_include.php, it is. In mysqli_functions_include.php, it is not - and as such, it will never return a connection.

pdo_functions_include.php #L152
i.imgur.com/bEdigUb.png


mysqli_functions_include.php #L126
i.imgur.com/NIKzO2X.png


My solution
Wrapping the connection in dbconnection() as follows
i.imgur.com/r87XkqQ.png

solved the two bugs that made me go hunting in the first place. I have not tested every place function_get_settings() is in use - I'll let you decide if that is needed.

Impact
(image) A quick command line search for function_get_settings() in 8.00.22
A lot of these places doesn't matter because of luck, but some do. I've found two, but they're probably not alone.

administration/bbcodes.php, before:
i.imgur.com/JVyBLPd.png

and after:
i.imgur.com/UQWWMa3.png


maintenance.php: Without the fix, it redirects to itself forever
Edited by Mickelvlm on 17-07-2019 14:21,
0 replies
There are no post found.

Labels

None yet

Statistics

  • Views 0 views
  • Posts 0 posts
  • Votes 0 votes
  • Topic users 1 member

1 participant

M
M
  • Junior Member, joined since
  • Contributed 10 posts on the community forums.
  • Started 6 threads in the forums
  • Started this discussions

Notifications

Track thread

You are not receiving notifications from this thread.

Related Questions

Not yet