OSDN Git Service

見対応のエラーメッセージ対応 v0.102
authorqwerty2501 <qwerty2501users.sourceforge.jp>
Sat, 10 Mar 2012 14:45:55 +0000 (23:45 +0900)
committerqwerty2501 <qwerty2501users.sourceforge.jp>
Sat, 10 Mar 2012 14:45:55 +0000 (23:45 +0900)
見確認APIエラー発生時の処理を修正

nlib/nlib.h
nlib/nlib_common.cpp
nlib/nlib_define.h
nlib/nlib_errorMessage.cpp
nlib/nlib_nicoLive.cpp
nlib/nlib_xmlHandler.cpp
nlite.suo

index d84b4eb..20b8444 100644 (file)
@@ -235,9 +235,7 @@ public:
 }
 
 
-#ifdef __cplusplus
-extern "C" {
-#endif
+
 
        
        ///
@@ -482,10 +480,6 @@ extern "C" {
 
 
 
-#ifdef __cplusplus
-}
-#endif
-
 
 
 #pragma comment(lib,"Wininet.lib")
index fe44ffd..3a02236 100644 (file)
@@ -228,9 +228,13 @@ static INLINE VOID Parser_Finalize(){
                        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;
@@ -249,4 +253,6 @@ networkerr:
        rslt = NLIB_FAILED_CONNECT;
 
        goto end;
+
+
  }
\ No newline at end of file
index 6a7d47a..9228167 100644 (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)
 
 
 
index f13ea46..1363dc0 100644 (file)
@@ -143,6 +143,9 @@ DECLARE_NLIB_ERROR_MESSAGE(NLIB_ERR_STREAM_IS_NULL,TEXT("
 ///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){
 
 
@@ -205,6 +208,7 @@ LPCTSTR NLIB_GetErrorMessage(NLIB_RESULT rsltCode){
                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()
        
 
index da6a41b..728b185 100644 (file)
@@ -542,14 +542,22 @@ NLIB_RESULT NicoLiveStream_connect(NicoLiveStream_P self,NicoVideoAuth_P nicoVid
                
                
        }
-
+       
        //\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;
index 7242d79..77acda0 100644 (file)
@@ -167,8 +167,12 @@ static INLINE NLIB_RESULT convToResultCode(LPCTSTR pszData,UINT nLength){
 
                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__));
@@ -177,6 +181,9 @@ static INLINE NLIB_RESULT convToResultCode(LPCTSTR pszData,UINT nLength){
                        
                        
        }
+
+       
+
        return rslt;
 
 }
index 112c5d2..b55cc9e 100644 (file)
Binary files a/nlite.suo and b/nlite.suo differ