|
@@ -27,12 +27,18 @@ void QueueStrManager::AddString(const char * chr)
|
|
|
LeaveCriticalSection(&m_csQueueList);
|
|
|
return;
|
|
|
}
|
|
|
- char* pchr = new char[m_max_length];
|
|
|
- strcpy(pchr, m_chr);
|
|
|
- QueueUserWorkItem(m_pfunc, (LPVOID)pchr, WT_EXECUTEDEFAULT);
|
|
|
- strcpy(m_chr, chr);
|
|
|
- m_couter = 1;
|
|
|
- m_length = strlen(chr);
|
|
|
+ try
|
|
|
+ {
|
|
|
+ char* pchr = new char[m_max_length];
|
|
|
+ strcpy(pchr, m_chr);
|
|
|
+ QueueUserWorkItem(m_pfunc, (LPVOID)pchr, WT_EXECUTEDEFAULT);
|
|
|
+ strcpy(m_chr, chr);
|
|
|
+ m_couter = 1;
|
|
|
+ m_length = strlen(chr);
|
|
|
+ }
|
|
|
+ catch(...){
|
|
|
+
|
|
|
+ }
|
|
|
}else {
|
|
|
if(m_couter == 0){
|
|
|
strcpy(m_chr, chr);
|