Theme directory name and unrecoverable WSOD
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Mahara |
Fix Released
|
Medium
|
Darryl Hamilton |
Bug Description
Discovered in Mahara 1.3.4
If you give your theme's directory a name that includes a period and set Mahara to use this theme, it will WSOD for all users unrecoverably.
To reproduce:
1) Create a new theme. Name the folder something akin to elab2.0
2) Select the theme as your default site theme, then log out.
3) WSOD
This is the relevant error in error_log:
[WAR] 01 (lib/web.php:641) Theme name is in invalid form: 'elab2.0', referer: http://
Only the site configuration was changed; institutions were set to use the site default.
I attempted the following to work around this:
1) Renamed the theme folder, hoping it would revert to the default theme.
2) Re-set the default theme through a direct SQL query
In both cases, the error persisted.
Due to apache write permissions, I was unable to delete the contents of $datadir/dwoo, which is where I think the problem lies.
Finally worked around this by editing lib/web.php and commenting out the dirname check.
Changed in mahara: | |
milestone: | none → 1.4.0 |
importance: | Undecided → Medium |
status: | New → Triaged |
Changed in mahara: | |
assignee: | nobody → Darryl Hamilton (lordp) |
status: | Triaged → In Progress |
Changed in mahara: | |
status: | In Progress → Fix Committed |
Changed in mahara: | |
status: | Fix Committed → Fix Released |
Default behaviour should be to report the error in theme name, but fall back to the default theme.