}
-#ifdef __cplusplus
-extern "C" {
-#endif
+
///
-#ifdef __cplusplus
-}
-#endif
-
#pragma comment(lib,"Wininet.lib")
goto networkerr;
}
+ try{
+ rslt = XMLParse(userData,recvBuffer,startElementEvent,endElementEvent,characterDataEvent);
+ }catch (nlib::Exception &e){
- rslt = XMLParse(userData,recvBuffer,startElementEvent,endElementEvent,characterDataEvent);
-
+ free(buffer);
+ throw e;
+ }
if(rslt != NLIB_ERR_OK){
goto end;
rslt = NLIB_FAILED_CONNECT;
goto end;
+
+
}
\ No newline at end of file
///\90¶\8eå\82Å\82Í\82È\82¢
#define NLIB_ERR_YOUARE_NOTOWNER ((NLIB_RESULT)43)
-
+///\83\86\81[\83U\81[\95ú\91\97\82ª\96\9e\88õ
+#define NLIB_ERR_GETPLAYERSTATUS_USERLIVESLOTFULL ((NLIB_RESULT)44)
///NLIB_ERR_YOUARE_NOTOWNER
DECLARE_NLIB_ERROR_MESSAGE(NLIB_ERR_YOUARE_NOTOWNER,TEXT("\82 \82È\82½\82Í\90¶\8eå\82Å\82Í\82 \82è\82Ü\82¹\82ñ"));
+///NLIB_ERR_GETPLAYERSTATUS_USERLIVESLOTFULL
+DECLARE_NLIB_ERROR_MESSAGE(NLIB_ERR_GETPLAYERSTATUS_USERLIVESLOTFULL,TEXT("\83\86\81[\83U\90¶\95ú\91\97\82ª\96\9e\88õ\82Å\82·"));
+
#define NLIB_ERRMESSAGE_TABLE_START(c) switch(c){
NLIB_ERRMESSAGE_CASE(errmes,NLIB_HEARTBEAT_FAILED_CONNECT)
NLIB_ERRMESSAGE_CASE(errmes,NLIB_ERR_STREAM_IS_NULL)
NLIB_ERRMESSAGE_CASE(errmes,NLIB_ERR_YOUARE_NOTOWNER)
+ NLIB_ERRMESSAGE_CASE(errmes,NLIB_ERR_GETPLAYERSTATUS_USERLIVESLOTFULL)
NLIB_ERRMESSAGE_TABLE_END()
}
-
+
//\83v\83\8c\83C\83\84\81[\83X\83e\81[\83^\83X\8eæ\93¾
EnterCriticalSection(&self->sessionManager.cs);
- rslt = GetPlayerStatus(&self->playerStatus,self->userSession,self->sessionManager.getPlayerStatusSession);
-
+ try{
+ rslt = GetPlayerStatus(&self->playerStatus,self->userSession,self->sessionManager.getPlayerStatusSession);
+ }catch (nlib::Exception &e){
+ LeaveCriticalSection(&self->sessionManager.cs);
+ throw e;
+ }
LeaveCriticalSection(&self->sessionManager.cs);
+
+
+
+
if(rslt != NLIB_ERR_OK){
goto connecterr;
rslt = NLIB_ERR_GETPLAYERSTATUS_BLOCK_NOW_COUNT_OVERFLOW;
+ }else if(_tcsncmp(pszData,TEXT("userliveslotfull"),nLength) == 0){
+
+ rslt = NLIB_ERR_GETPLAYERSTATUS_USERLIVESLOTFULL;
+
}else {
- std::wstring errmessage(TEXT("\8c©\8am\94F\82Ì\83v\83\8c\83C\83\84\81[\83X\83e\81[\83^\83X\83G\83\89\81[:"));
+ std::wstring errmessage(TEXT("\96¢\8am\94F\82Ì\83v\83\8c\83C\83\84\81[\83X\83e\81[\83^\83X\83G\83\89\81[:"));
errmessage.append(pszData,nLength);
rslt = NLIB_ERR_GETPLAYERSTATUS_UNDEFINED;
throw nlib::Exception(errmessage.c_str(),__LINE__,TEXT(__FILE__),TEXT(__FILE__));
}
+
+
+
return rslt;
}