Bug 1251891 - Fix -Wunreachable-code warnings in testplugin. r=jimm
dom/plugins/test/testplugin/nptest_macosx.mm:278:10: warning: will never be executed [-Wunreachable-code]
dom/plugins/test/testplugin/nptest_macosx.mm:307:10: warning: will never be executed [-Wunreachable-code]
dom/plugins/test/testplugin/nptest.cpp:697:7: warning: will never be executed [-Wunreachable-code]
dom/plugins/test/testplugin/nptest.cpp:2300:15: warning: will never be executed [-Wunreachable-code]
--- a/dom/plugins/test/testplugin/nptest.cpp
+++ b/dom/plugins/test/testplugin/nptest.cpp
@@ -689,17 +689,16 @@ NP_GetValue(void* future, NPPVariable aV
case NPPVpluginNameString:
*((const char**)aValue) = sPluginName;
break;
case NPPVpluginDescriptionString:
*((const char**)aValue) = sPluginDescription;
break;
default:
return NPERR_INVALID_PARAM;
- break;
}
return NPERR_NO_ERROR;
}
#endif
static bool fillPluginFunctionTable(NPPluginFuncs* pFuncs)
{
// Check the size of the provided structure based on the offset of the
@@ -2201,17 +2200,19 @@ compareVariants(NPP instance, const NPVa
bool success = true;
InstanceData* id = static_cast<InstanceData*>(instance->pdata);
if (var1->type != var2->type) {
id->err << "Variant types don't match; got " << var1->type <<
" expected " << var2->type;
return false;
}
- switch (var1->type) {
+ // Cast var1->type from NPVariantType to int to avoid compiler warnings about
+ // not needing a default case when we have cases for every enum value.
+ switch (static_cast<int>(var1->type)) {
case NPVariantType_Int32: {
int32_t result = NPVARIANT_TO_INT32(*var1);
int32_t expected = NPVARIANT_TO_INT32(*var2);
if (result != expected) {
id->err << "Variant values don't match; got " << result <<
" expected " << expected;
success = false;
}
@@ -2294,16 +2295,17 @@ compareVariants(NPP instance, const NPVa
}
}
NPN_MemFree(identifiers);
break;
}
default:
id->err << "Unknown variant type";
success = false;
+ MOZ_ASSERT_UNREACHABLE("Unknown variant type?!");
}
return success;
}
static bool
throwExceptionNextInvoke(NPObject* npobj, const NPVariant* args, uint32_t argCount, NPVariant* result)
{
@@ -3976,9 +3978,8 @@ getAudioMuted(NPObject* npobj, const NPV
return false;
}
NPP npp = static_cast<TestNPObject*>(npobj)->npp;
InstanceData* id = static_cast<InstanceData*>(npp->pdata);
BOOLEAN_TO_NPVARIANT(id->audioMuted, *result);
return true;
}
-
--- a/dom/plugins/test/testplugin/nptest_gtk2.cpp
+++ b/dom/plugins/test/testplugin/nptest_gtk2.cpp
@@ -466,18 +466,17 @@ int32_t pluginGetEdge(InstanceData* inst
return pluginX;
case EDGE_TOP:
return pluginY;
case EDGE_RIGHT:
return pluginX + pluginWidth;
case EDGE_BOTTOM:
return pluginY + pluginHeight;
}
-
- return NPTEST_INT32_ERROR;
+ MOZ_CRASH("Unexpected RectEdge?!");
}
#ifdef MOZ_X11
static void intersectWithShapeRects(Display* display, Window window,
int kind, GdkRegion* region)
{
int count = -1, order;
XRectangle* shapeRects =
--- a/dom/plugins/test/testplugin/nptest_macosx.mm
+++ b/dom/plugins/test/testplugin/nptest_macosx.mm
@@ -270,17 +270,17 @@ int32_t pluginGetEdge(InstanceData* inst
return w->x;
case EDGE_TOP:
return w->y;
case EDGE_RIGHT:
return w->x + w->width;
case EDGE_BOTTOM:
return w->y + w->height;
}
- return NPTEST_INT32_ERROR;
+ MOZ_CRASH("Unexpected RectEdge?!");
}
int32_t pluginGetClipRegionRectCount(InstanceData* instanceData)
{
return 1;
}
int32_t pluginGetClipRegionRectEdge(InstanceData* instanceData,
@@ -299,14 +299,14 @@ int32_t pluginGetClipRegionRectEdge(Inst
return w->clipRect.left;
case EDGE_TOP:
return w->clipRect.top + COCOA_TITLEBAR_HEIGHT;
case EDGE_RIGHT:
return w->clipRect.right;
case EDGE_BOTTOM:
return w->clipRect.bottom + COCOA_TITLEBAR_HEIGHT;
}
- return NPTEST_INT32_ERROR;
+ MOZ_CRASH("Unexpected RectEdge?!");
}
void pluginDoInternalConsistencyCheck(InstanceData* instanceData, string& error)
{
}