Software /
code /
prosody
Diff
plugins/mod_storage_sql.lua @ 4218:8a271b3fcaa7
mod_storage_sql: Display friendlier error when LuaDBI is missing
author | Matthew Wild <mwild1@gmail.com> |
---|---|
date | Tue, 01 Mar 2011 06:12:43 +0000 |
parent | 4109:d26db1f936f8 |
child | 4285:c806a599224a |
line wrap: on
line diff
--- a/plugins/mod_storage_sql.lua Sat Feb 26 00:23:48 2011 +0000 +++ b/plugins/mod_storage_sql.lua Tue Mar 01 06:12:43 2011 +0000 @@ -96,7 +96,18 @@ end do -- process options to get a db connection - DBI = require "DBI"; + local ok; + prosody.unlock_globals(); + ok, DBI = pcall(require, "DBI"); + if not ok then + package.loaded["DBI"] = {}; + module:log("error", "Failed to load the LuaDBI library for accessing SQL databases: %s", DBI); + module:log("error", "More information on installing LuaDBI can be found at http://prosody.im/doc/depends#luadbi"); + end + prosody.lock_globals(); + if not ok or not DBI.Connect then + return; -- Halt loading of this module + end params = params or { driver = "SQLite3" };