소스 검색

Fix dereference after null check

Stefan Profanter 7 년 전
부모
커밋
28f225eb70
1개의 변경된 파일3개의 추가작업 그리고 2개의 파일을 삭제
  1. 3 2
      src/server/ua_services_call.c

+ 3 - 2
src/server/ua_services_call.c

@@ -68,10 +68,11 @@ Operation_CallMethod(UA_Server *server, UA_Session *session,
         (const UA_MethodNode*)UA_NodeStore_get(server->nodestore, &request->methodId);
     if(!methodCalled)
         result->statusCode = UA_STATUSCODE_BADMETHODINVALID;
-    if(methodCalled->nodeClass != UA_NODECLASS_METHOD)
+    else if(methodCalled->nodeClass != UA_NODECLASS_METHOD)
         result->statusCode = UA_STATUSCODE_BADNODECLASSINVALID;
-    if(!methodCalled->attachedMethod)
+    else if(!methodCalled->attachedMethod)
         result->statusCode = UA_STATUSCODE_BADINTERNALERROR;
+
     if(result->statusCode != UA_STATUSCODE_GOOD)
         return;