summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
2a3bc07)
When closing the TC db on cleanup, we didn't remove it from the
environment. Override the #close() method to achieve that.
if absfilename && File.exist?(key)
# db already exists, use it
@db = DBTree.open_db(key)
if absfilename && File.exist?(key)
# db already exists, use it
@db = DBTree.open_db(key)
elsif absfilename
# create empty db
@db = DBTree.create_db(key)
elsif absfilename
# create empty db
@db = DBTree.create_db(key)
elsif File.exist? relfilename
# db already exists, use it
@db = DBTree.open_db relfilename
elsif File.exist? relfilename
# db already exists, use it
@db = DBTree.open_db relfilename
+ @fname = relfilename.dup
else
# create empty db
@db = DBTree.create_db relfilename
else
# create empty db
@db = DBTree.create_db relfilename
+ @fname = relfilename.dup
end
oldbasename = (absfilename ? key : relfilename).gsub(/\.tdb$/, ".db")
if File.exists? oldbasename and defined? BDB
end
oldbasename = (absfilename ? key : relfilename).gsub(/\.tdb$/, ".db")
if File.exists? oldbasename and defined? BDB
@@bot_registries.clear
end
@@bot_registries.clear
end
+ def close
+ db = @@bot_registries.delete(@fname)
+ if db != @db
+ error "We think we have #{@db} from #{@fname}, TC pseudo-env gives us #{db}"
+ end
+ @db.close
+ end
+
def DBTree.create_db(name)
debug "DBTree: creating empty db #{name}"
if @@bot_registries.key? name
def DBTree.create_db(name)
debug "DBTree: creating empty db #{name}"
if @@bot_registries.key? name