all repos — fluxbox @ 38ef6e515589af7841c577188eb23c5dbe5d11f3

custom fork of the fluxbox windowmanager

made code simpler
Mathias Gumz akira at fluxbox dot org
commit

38ef6e515589af7841c577188eb23c5dbe5d11f3

parent

69de5b5a00abf131452a8d5153afd0df6e86ce6c

2 files changed, 7 insertions(+), 16 deletions(-)

jump to
M src/FbTk/Resource.ccsrc/FbTk/Resource.cc

@@ -42,7 +42,11 @@ m_db_lock(0),

m_database(0), m_filename(filename ? filename : "") { - ensureXrmIsInitialize(); + static bool xrm_initialized = false; + if (!xrm_initialized) { + XrmInitialize(); + xrm_initialized = true; + } if (lock_db) lock();

@@ -53,7 +57,6 @@ if (m_database)

delete m_database; } -bool ResourceManager::m_init = false; /** reloads all resources from resourcefile

@@ -196,13 +199,6 @@ Resource_base *res = findResource(resname);

if (res != 0) res->setFromString(value.c_str()); -} - -void ResourceManager::ensureXrmIsInitialize() { - if (!m_init) { - XrmInitialize(); - m_init = true; - } } ResourceManager &ResourceManager::lock() {
M src/FbTk/Resource.hhsrc/FbTk/Resource.hh

@@ -139,12 +139,10 @@ std::cerr<<(*it)->name()<<std::endl;

} } protected: - static void ensureXrmIsInitialize(); int m_db_lock; private: - static bool m_init; ResourceList m_resourcelist;

@@ -168,11 +166,8 @@ template <typename T>

class Resource:public Resource_base, public Accessor<T> { public: typedef T Type; - Resource(ResourceManager &rm, T val, - const std::string &name, const std::string &altname): - Resource_base(name, altname), - m_value(val), m_defaultval(val), - m_rm(rm) { + Resource(ResourceManager &rm, T val, const std::string &name, const std::string &altname): + Resource_base(name, altname), m_value(val), m_defaultval(val), m_rm(rm) { m_rm.addResource(*this); // add this to resource handler } virtual ~Resource() {