return result;
return rv;
PREF_UnregisterCallback(const char *pref_node,                         PrefChangedFunc callback,                         void * instance_data){    PrefResult result = PREF_ERROR;    struct CallbackNode* node = gCallbacks;    struct CallbackNode* prev_node = NULL;        while (node != NULL)    {        if ( strcmp(node->domain, pref_node) == 0 &&             node->func == callback &&             node->data == instance_data )        {            struct CallbackNode* next_node = node->next;            if (prev_node)                prev_node->next = next_node;            else                gCallbacks = next_node;            PR_Free(node->domain);            PR_Free(node);            node = next_node;            result = PREF_NOERROR;        }        else        {            prev_node = node;            node = node->next;        }    }    return result;}