]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - include/dynamic.h
Added some hax :( to prevent invalid symbols. It seems that instead of returning...
[user/henk/code/inspircd.git] / include / dynamic.h
index 10b87b40c5c25e172fdd72d9bc9882e4cecb4514..98deaf7613e7b8d43a3c52b377045392bd79bca7 100644 (file)
@@ -25,17 +25,17 @@ typedef void * (initfunc) (void);
 class DLLManager
 {
  public:
-       DLLManager(char *fname);
+       DLLManager(const char *fname);
        virtual ~DLLManager();
 
 
 #ifdef STATIC_LINK
-       bool GetSymbol( initfunc* &v, char *sym_name );
+       bool GetSymbol( initfunc* &v, const char *sym_name );
 #else
-       bool GetSymbol( void **, char *sym_name );
+       bool GetSymbol( void **, const char *sym_name );
 #endif
 
-       char *LastError() 
+       charLastError() 
        {
                 return err;
        }
@@ -52,7 +52,7 @@ class DLLManager
 class DLLFactoryBase : public DLLManager
 {
  public:
-       DLLFactoryBase(char *fname, char *func_name = 0);
+       DLLFactoryBase(const char *fname, const char *func_name = 0);
        virtual ~DLLFactoryBase();
 #ifdef STATIC_LINK
        initfunc *factory_func;
@@ -65,9 +65,9 @@ class DLLFactoryBase : public DLLManager
 template <class T> class DLLFactory : public DLLFactoryBase
 {
  public:
-       DLLFactory(char *fname, char *func_name=0) : DLLFactoryBase(fname,func_name)
+       DLLFactory(const char *fname, const char *func_name=0) : DLLFactoryBase(fname,func_name)
        {
-               if (factory_func)
+               if (!err && factory_func)
                        factory = (T*)factory_func();
                else
                        factory = 0;
@@ -81,9 +81,4 @@ template <class T> class DLLFactory : public DLLFactoryBase
        T *factory;
 };
 
-
-
-
-
-
 #endif