diff --git a/src/packer.cpp b/src/packer.cpp index 84add5c6..80e503ca 100644 --- a/src/packer.cpp +++ b/src/packer.cpp @@ -1072,6 +1072,12 @@ void Packer::initLoader(const void *pdata, int plen, int pinfo, int small) } +void Packer::addLoader(const char *s) +{ + if (*s) + linker->addSection(s); +} + void __acc_cdecl_va Packer::addLoader(const char *s, ...) { va_list ap; diff --git a/src/packer.h b/src/packer.h index 4eda5e25..6d673d74 100644 --- a/src/packer.h +++ b/src/packer.h @@ -208,6 +208,7 @@ protected: virtual const upx_byte *getLoader() const; virtual int getLoaderSize() const; virtual void initLoader(const void *pdata, int plen, int pinfo=-1, int small=-1); + virtual void addLoader(const char *s); virtual void __acc_cdecl_va addLoader(const char *s, ...); virtual int getLoaderSection(const char *name, int *slen=NULL) const; virtual int getLoaderSectionStart(const char *name, int *slen=NULL) const;