diff options
Diffstat (limited to 'utilities.cpp')
-rw-r--r-- | utilities.cpp | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/utilities.cpp b/utilities.cpp index e0661a3..49e0c07 100644 --- a/utilities.cpp +++ b/utilities.cpp @@ -30,6 +30,19 @@ TCHAR* __stdcall UniGetContactSettingUtf(HANDLE hContact, const char *szModule,c return szRes;
}
+char* __stdcall GetContactSettingStringA(HANDLE hContact, const char *szModule,const char* szSetting, char* szDef)
+{
+ DBVARIANT dbv = {DBVT_DELETED};
+ char* szRes;
+ if (DBGetContactSettingString(hContact, szModule, szSetting, &dbv))
+ return _strdup(szDef);
+ if(dbv.pszVal)
+ szRes = _strdup(dbv.pszVal);
+ DBFreeVariant(&dbv);
+ return szRes;
+}
+
+
char *date()
{
static char d[11];
@@ -207,7 +220,7 @@ int OnPreBuildContactMenu(WPARAM w, LPARAM l) void storeOutput(HANDLE ahandle, string *output)
{
BOOL success;
- char readbuffer[10];
+ char readbuffer[4096] = {0};
unsigned long transfered, available;
do {
@@ -216,7 +229,7 @@ void storeOutput(HANDLE ahandle, string *output) continue;
success=ReadFile(ahandle,readbuffer,sizeof(readbuffer),&transfered,NULL);
if (success && transfered)
- output->append(readbuffer, 10);
+ output->append(readbuffer, 4096);
} while (available>0);
}
|