diff --git a/modules/libpref/Preferences.cpp b/modules/libpref/Preferences.cpp index 256c2adfabaf..7275bc2d0607 100644 --- a/modules/libpref/Preferences.cpp +++ b/modules/libpref/Preferences.cpp @@ -291,7 +291,7 @@ MatchPrefEntry(const PLDHashEntryHdr* aEntry, const void* aKey) struct CallbackNode { - char* mDomain; + const char* mDomain; // If someone attempts to remove the node from the callback list while // pref_DoCallback is running, |func| is set to nullptr. Such nodes will @@ -381,7 +381,7 @@ PREF_Cleanup() while (node) { next_node = node->mNext; - free(node->mDomain); + free(const_cast(node->mDomain)); free(node); node = next_node; } @@ -1194,7 +1194,7 @@ pref_RemoveCallbackNode(CallbackNode* aNode, CallbackNode* aPrevNode) if (gLastPriorityNode == aNode) { gLastPriorityNode = aPrevNode; } - free(aNode->mDomain); + free(const_cast(aNode->mDomain)); free(aNode); return next_node; }