227 function fetch_config() {
228 $sql = "select * from mt_config";
229 list($row) = $this->get_results($sql, ARRAY_A);
230 if (!$row) return null;
231 return $row;
232 }
the use of list here is problematic if the desire is to return multiple rows of config values from the mt_config table. In a multirow result list() will only grab the results in the first array it encounters.
its not clear to me the design of mt_config because MT is stuffing all config values into one row (seems to defeat the point of using a table). since its a table I would assume mutliple rows is the intent (no matter what the MT kernel is doing with the base config values), and thus this function seems broken.
the fix is obvious, iterate over the returned hash and merge the results (pretty nasty results, but its what the caller would expect at least).
Though I have not installed any of the 5beta branches it seems like those will have a similar problem as the code still doesnt look for multiple rows returned - tho that code doesnt seem to make sense to me at all since I dont see where Load learns to select from mt_config, the table is not passed in a class.mt_config.php Load function, which is what I would have expected looking at that code.
Reported on Movable Type 4.25

File a bug report @ http://www.movabletype.org/feedback.html