From c680d321811c5bc27cd200786ff68272b59c473f Mon Sep 17 00:00:00 2001 From: Frederic Massart Date: Mon, 21 Jul 2014 10:08:51 +0800 Subject: [PATCH] Ensure that database name does not exceed 28 chars. Fixes #87 --- lib/commands/create.py | 8 ++++---- lib/moodle.py | 8 ++++---- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/lib/commands/create.py b/lib/commands/create.py index ac24398..59074d8 100644 --- a/lib/commands/create.py +++ b/lib/commands/create.py @@ -182,11 +182,11 @@ class CreateCommand(Command): if args.install: # Checking database - dbname = re.sub(r'[^a-zA-Z0-9]', '', name).lower()[:28] + dbname = re.sub(r'[^a-zA-Z0-9]', '', name).lower() prefixDbname = self.C.get('db.namePrefix') - if prefixDbname == None: - prefixDbname = ''; - dbname = prefixDbname + dbname + if prefixDbname: + dbname = prefixDbname + dbname + dbname = dbname[:28] db = DB(engine, self.C.get('db.%s' % engine)) dropDb = False if db.dbexists(dbname): diff --git a/lib/moodle.py b/lib/moodle.py index f82ff79..365ffef 100644 --- a/lib/moodle.py +++ b/lib/moodle.py @@ -383,11 +383,11 @@ class Moodle(object): if dataDir == None or not os.path.isdir(dataDir): raise InstallException('Cannot install instance without knowing where the data directory is') if dbname == None: - dbname = re.sub(r'[^a-zA-Z0-9]', '', self.identifier).lower()[:28] + dbname = re.sub(r'[^a-zA-Z0-9]', '', self.identifier).lower() prefixDbname = C.get('db.namePrefix') - if prefixDbname == None: - prefixDbname = ''; - dbname = prefixDbname + dbname + if prefixDbname: + dbname = prefixDbname + dbname + dbname = dbname[:28] if engine == None: engine = C.get('defaultEngine') if fullname == None: -- 2.11.0