# HG changeset patch # User Matthew Wild # Date 1293749963 0 # Node ID 3112a9e450ac176e6abc28e896311a8e8b7db340 # Parent 1a32e9ae79d0920de80ef6513e392b8fe17a47b8 verse: Make add_plugin only load a plugin once per stream diff -r 1a32e9ae79d0 -r 3112a9e450ac init.lua --- a/init.lua Thu Dec 30 20:19:47 2010 +0000 +++ b/init.lua Thu Dec 30 22:59:23 2010 +0000 @@ -22,6 +22,7 @@ t.id = tostring(t):match("%x*$"); t:set_logger(logger, true); t.events = events.new(); + t.plugins = {}; return t; end @@ -173,10 +174,12 @@ end function stream:add_plugin(name) + if self.plugins[name] then return true; end if require("verse.plugins."..name) then local ok, err = verse.plugins[name](self); if ok ~= false then self:debug("Loaded %s plugin", name); + self.plugins[name] = true; else self:warn("Failed to load %s plugin: %s", name, err); end