- if (ret == PRVINFO_ERROR_NO_MATCHING_PRIVILEGE) {
- char* tempPrivilege = NULL;
- char* token = NULL;
- char* temp = NULL;
- char* save = NULL;
- tempPrivilege = strdup(privilege);
- TryReturn(tempPrivilege != NULL, free(tempPrivilege), PRVINFO_ERROR_OUT_OF_MEMORY, "[PRVINFO_ERROR_OUT_OF_MEMORY] tempPrivilege's strdup is failed.");
- token = strtok_r(tempPrivilege, "/", &save);
- while (token) {
- temp = token;
- token = strtok_r(NULL, "/", &save);
- }
- TryReturn(temp != NULL, free(tempPrivilege), PRVINFO_ERROR_INVALID_PARAMETER, "[PRVINFO_ERROR_INVALID_PARAMETER] invalid privilege <%s>", privilege);
- *display_name = strdup(temp);
- TryReturn(*display_name != NULL, free(tempPrivilege), PRVINFO_ERROR_OUT_OF_MEMORY, "[PRVINFO_ERROR_OUT_OF_MEMORY] Memory allocation failed.");
- free(tempPrivilege);
- } else if (ret == PRVINFO_ERROR_NONE) {