aboutsummaryrefslogtreecommitdiff
path: root/engines/sci
diff options
context:
space:
mode:
authorD G Turner2019-12-01 05:06:31 +0000
committerD G Turner2019-12-01 05:06:31 +0000
commitd11c61db1466d79ef6253814a86b04950b499ec3 (patch)
tree2987143903d00c9e6b0b8a8490aade67fe052b68 /engines/sci
parentf0c02796f44f7302719b0b107d0f0af6b00ffc50 (diff)
downloadscummvm-rg350-d11c61db1466d79ef6253814a86b04950b499ec3.tar.gz
scummvm-rg350-d11c61db1466d79ef6253814a86b04950b499ec3.tar.bz2
scummvm-rg350-d11c61db1466d79ef6253814a86b04950b499ec3.zip
SCI: Fix Missing Default Switch Cases
These are flagged by GCC if -Wswitch-default is enabled.
Diffstat (limited to 'engines/sci')
-rw-r--r--engines/sci/console.cpp4
-rw-r--r--engines/sci/decompressor.cpp7
-rw-r--r--engines/sci/engine/guest_additions.cpp4
-rw-r--r--engines/sci/engine/kernel.cpp3
-rw-r--r--engines/sci/engine/kgraphics.cpp2
-rw-r--r--engines/sci/engine/kmisc.cpp4
-rw-r--r--engines/sci/engine/kmovement.cpp6
-rw-r--r--engines/sci/engine/ksound.cpp2
-rw-r--r--engines/sci/engine/kstring.cpp2
-rw-r--r--engines/sci/engine/script_patches.cpp8
-rw-r--r--engines/sci/engine/scriptdebug.cpp3
-rw-r--r--engines/sci/engine/segment.h3
-rw-r--r--engines/sci/engine/state.cpp4
-rw-r--r--engines/sci/graphics/controls16.cpp2
-rw-r--r--engines/sci/graphics/controls32.cpp2
-rw-r--r--engines/sci/graphics/menu.cpp13
-rw-r--r--engines/sci/graphics/palette.cpp2
-rw-r--r--engines/sci/graphics/screen.cpp2
-rw-r--r--engines/sci/graphics/screen_item32.cpp10
-rw-r--r--engines/sci/graphics/text16.cpp5
-rw-r--r--engines/sci/graphics/transitions.cpp6
-rw-r--r--engines/sci/graphics/transitions32.cpp25
-rw-r--r--engines/sci/graphics/view.cpp1
-rw-r--r--engines/sci/parser/vocabulary.cpp2
-rw-r--r--engines/sci/resource.cpp8
-rw-r--r--engines/sci/resource_audio.cpp5
-rw-r--r--engines/sci/sound/audio.cpp2
-rw-r--r--engines/sci/sound/drivers/amigamac.cpp2
-rw-r--r--engines/sci/sound/midiparser_sci.cpp3
29 files changed, 124 insertions, 18 deletions
diff --git a/engines/sci/console.cpp b/engines/sci/console.cpp
index 8409ca0440..84f74d9cdf 100644
--- a/engines/sci/console.cpp
+++ b/engines/sci/console.cpp
@@ -3923,6 +3923,10 @@ void Console::printBreakpoint(int index, const Breakpoint &bp) {
break;
case BREAK_KERNEL:
debugPrintf("Kernel call k%s%s\n", bp._name.c_str(), bpaction);
+ break;
+ default:
+ debugPrintf("UNKNOWN TYPE\n");
+ break;
}
}
diff --git a/engines/sci/decompressor.cpp b/engines/sci/decompressor.cpp
index 158119fe86..d29a7dcf95 100644
--- a/engines/sci/decompressor.cpp
+++ b/engines/sci/decompressor.cpp
@@ -171,6 +171,8 @@ int DecompressorLZW::unpack(Common::ReadStream *src, byte *dest, uint32 nPacked,
unpackLZW1(src, buffer, nPacked, nUnpacked);
reorderPic(buffer, dest, nUnpacked);
break;
+ default:
+ break;
}
delete[] buffer;
return 0;
@@ -334,6 +336,9 @@ int DecompressorLZW::unpackLZW1(Common::ReadStream *src, byte *dest, uint32 nPac
}
lastbits = bitstring;
break;
+
+ default:
+ break;
}
}
@@ -367,6 +372,7 @@ void DecompressorLZW::decodeRLE(byte **rledata, byte **pixeldata, byte *outbuffe
pos += nextbyte;
break;
case 0xC0:
+ default:
break;
case 0x80:
nextbyte = *pd++;
@@ -400,6 +406,7 @@ int DecompressorLZW::getRLEsize(byte *rledata, int dsize) {
pos += nextbyte;
break;
case 0xC0:
+ default:
break;
case 0x80:
pos++;
diff --git a/engines/sci/engine/guest_additions.cpp b/engines/sci/engine/guest_additions.cpp
index 5ed3776415..dd0448f4a0 100644
--- a/engines/sci/engine/guest_additions.cpp
+++ b/engines/sci/engine/guest_additions.cpp
@@ -842,6 +842,7 @@ void GuestAdditions::syncMessageTypeFromScummVM() const {
break;
#endif
case kMessageTypeSyncStrategyNone:
+ default:
break;
}
}
@@ -940,6 +941,7 @@ void GuestAdditions::syncMessageTypeToScummVM(const int index, const reg_t value
// LSL6hires synchronisation happens via send_selector
#endif
case kMessageTypeSyncStrategyNone:
+ default:
break;
}
}
@@ -1326,6 +1328,8 @@ void GuestAdditions::syncAudioVolumeGlobalsToScummVM(const int index, const reg_
case kGlobalVarTorinSpeechVolume:
ConfMan.setInt("speech_volume", volume);
break;
+ default:
+ break;
}
}
break;
diff --git a/engines/sci/engine/kernel.cpp b/engines/sci/engine/kernel.cpp
index 3cf5fd5b79..8477b93a24 100644
--- a/engines/sci/engine/kernel.cpp
+++ b/engines/sci/engine/kernel.cpp
@@ -300,6 +300,9 @@ static uint16 *parseKernelSignature(const char *kernelName, const char *writtenS
writePos++;
signature = 0;
}
+ break;
+ default:
+ break;
}
}
switch (curChar) {
diff --git a/engines/sci/engine/kgraphics.cpp b/engines/sci/engine/kgraphics.cpp
index e6644b54bd..5562e2c45d 100644
--- a/engines/sci/engine/kgraphics.cpp
+++ b/engines/sci/engine/kgraphics.cpp
@@ -860,6 +860,8 @@ void _k_GenericDrawControl(EngineState *s, reg_t controlObject, bool hilite) {
case SCI_CONTROLS_TYPE_TEXT:
splitText = g_sci->strSplitLanguage(text.c_str(), &languageSplitter);
break;
+ default:
+ break;
}
switch (type) {
diff --git a/engines/sci/engine/kmisc.cpp b/engines/sci/engine/kmisc.cpp
index 43487939e5..0b5756c337 100644
--- a/engines/sci/engine/kmisc.cpp
+++ b/engines/sci/engine/kmisc.cpp
@@ -369,6 +369,8 @@ reg_t kMemory(EngineState *s, int argc, reg_t *argv) {
}
break;
}
+ default:
+ break;
}
return s->r_acc;
@@ -757,6 +759,8 @@ reg_t kKawaHacks(EngineState *s, int argc, reg_t *argv) {
case 3: // IsDebug
// Return 1 if running with an internal debugger, 2 if we have AddMenu support, 3 if both.
return make_reg(0, 3);
+ default:
+ break;
}
return NULL_REG;
}
diff --git a/engines/sci/engine/kmovement.cpp b/engines/sci/engine/kmovement.cpp
index 9b83dbc52d..7422980df8 100644
--- a/engines/sci/engine/kmovement.cpp
+++ b/engines/sci/engine/kmovement.cpp
@@ -476,6 +476,9 @@ reg_t kDoAvoider(EngineState *s, int argc, reg_t *argv) {
case 270:
case 315:
newX -= clientXstep;
+ break;
+ default:
+ break;
}
switch (newHeading) {
@@ -488,6 +491,9 @@ reg_t kDoAvoider(EngineState *s, int argc, reg_t *argv) {
case 180:
case 225:
newY += clientYstep;
+ break;
+ default:
+ break;
}
writeSelectorValue(segMan, client, SELECTOR(x), newX);
writeSelectorValue(segMan, client, SELECTOR(y), newY);
diff --git a/engines/sci/engine/ksound.cpp b/engines/sci/engine/ksound.cpp
index 1a34e82c5e..321e83d947 100644
--- a/engines/sci/engine/ksound.cpp
+++ b/engines/sci/engine/ksound.cpp
@@ -92,6 +92,8 @@ reg_t kDoSoundPhantasmagoriaMac(EngineState *s, int argc, reg_t *argv) {
return g_sci->_soundCmd->kDoSoundSetLoop(s, argc - 1, argv + 1);
case 10:
return g_sci->_soundCmd->kDoSoundUpdateCues(s, argc - 1, argv + 1);
+ default:
+ break;
}
error("Unknown kDoSound Phantasmagoria Mac subop %d", argv[0].toUint16());
diff --git a/engines/sci/engine/kstring.cpp b/engines/sci/engine/kstring.cpp
index cbe481d343..4cf12360a1 100644
--- a/engines/sci/engine/kstring.cpp
+++ b/engines/sci/engine/kstring.cpp
@@ -544,6 +544,8 @@ reg_t kMessage(EngineState *s, int argc, reg_t *argv) {
return make_reg(0, t.verb);
case K_MESSAGE_REFNOUN:
return make_reg(0, t.noun);
+ default:
+ break;
}
}
diff --git a/engines/sci/engine/script_patches.cpp b/engines/sci/engine/script_patches.cpp
index 753b25636b..7641a32528 100644
--- a/engines/sci/engine/script_patches.cpp
+++ b/engines/sci/engine/script_patches.cpp
@@ -17305,6 +17305,9 @@ void ScriptPatcher::applyPatch(const SciScriptPatcherEntry *patchEntry, SciSpan<
case PATCH_CODE_BYTE:
scriptData[offset] = patchValue & PATCH_BYTEMASK;
offset++;
+ break;
+ default:
+ break;
}
patchData++;
patchWord = *patchData;
@@ -17383,6 +17386,9 @@ bool ScriptPatcher::verifySignature(uint32 byteOffset, const uint16 *signatureDa
} else {
sigWord = SIG_MISMATCH; // out of bounds
}
+ break;
+ default:
+ break;
}
if (sigWord == SIG_MISMATCH)
@@ -17493,6 +17499,8 @@ void ScriptPatcher::calculateMagicDWordAndVerify(const char *signatureDescriptio
}
break;
}
+ default:
+ break;
}
magicOffset -= 2;
if (magicDWordLeft) {
diff --git a/engines/sci/engine/scriptdebug.cpp b/engines/sci/engine/scriptdebug.cpp
index c579239b09..7a1fe66d35 100644
--- a/engines/sci/engine/scriptdebug.cpp
+++ b/engines/sci/engine/scriptdebug.cpp
@@ -1111,6 +1111,9 @@ void logBacktrace() {
con->debugPrintf(" %x:[%x] vs%s %s::%s (", i, call.debugOrigin, (call.argc) ? "write" : "read",
objname, g_sci->getKernel()->getSelectorName(call.debugSelector).c_str());
break;
+
+ default:
+ break;
}
totalparamc = call.argc;
diff --git a/engines/sci/engine/segment.h b/engines/sci/engine/segment.h
index 8df3653434..5bc655a4bf 100644
--- a/engines/sci/engine/segment.h
+++ b/engines/sci/engine/segment.h
@@ -752,8 +752,11 @@ public:
}
break;
}
+
case kArrayTypeInvalid:
+ default:
error("Attempted write to uninitialized SciArray");
+ break;
}
}
diff --git a/engines/sci/engine/state.cpp b/engines/sci/engine/state.cpp
index 65d5562ab9..5bb1343839 100644
--- a/engines/sci/engine/state.cpp
+++ b/engines/sci/engine/state.cpp
@@ -264,7 +264,11 @@ Common::String SciEngine::getSciLanguageString(const Common::String &str, kLangu
fullWidth += 0x0D; // CR
textPtr += 2;
continue;
+ default:
+ break;
}
+ default:
+ break;
}
textPtr++;
diff --git a/engines/sci/graphics/controls16.cpp b/engines/sci/graphics/controls16.cpp
index 138f49e765..08906c03a0 100644
--- a/engines/sci/graphics/controls16.cpp
+++ b/engines/sci/graphics/controls16.cpp
@@ -214,6 +214,8 @@ void GfxControls16::kernelTexteditChange(reg_t controlObject, reg_t eventObject)
break;
}
break;
+ default:
+ break;
}
}
diff --git a/engines/sci/graphics/controls32.cpp b/engines/sci/graphics/controls32.cpp
index fa4396c1d8..9f0223be84 100644
--- a/engines/sci/graphics/controls32.cpp
+++ b/engines/sci/graphics/controls32.cpp
@@ -172,6 +172,8 @@ reg_t GfxControls32::kernelEditText(const reg_t controlObject) {
case kSciKeyEnter:
focused = false;
break;
+ default:
+ break;
}
}
diff --git a/engines/sci/graphics/menu.cpp b/engines/sci/graphics/menu.cpp
index 25d9edabe6..b1ebbc71e5 100644
--- a/engines/sci/graphics/menu.cpp
+++ b/engines/sci/graphics/menu.cpp
@@ -138,6 +138,8 @@ void GfxMenu::kernelAddEntry(Common::String title, Common::String content, reg_t
functionPos = curPos;
}
break;
+ default:
+ break;
}
curPos++;
}
@@ -205,6 +207,9 @@ void GfxMenu::kernelAddEntry(Common::String title, Common::String content, reg_t
// Some multilingual sci01 games use e.g. '--!%G--!' (which doesn't really make sense)
separatorCount += 2;
curPos++;
+ break;
+ default:
+ break;
}
curPos++;
}
@@ -492,6 +497,9 @@ reg_t GfxMenu::kernelSelect(reg_t eventObject, bool pauseSound) {
forceClaimed = true;
}
} break;
+
+ default:
+ break;
}
if (!_menuSaveHandle.isNull()) {
@@ -790,6 +798,8 @@ GuiMenuItemEntry *GfxMenu::interactiveWithKeyboard() {
case kSciKeyDown:
newItemId++;
break;
+ default:
+ break;
}
if ((newMenuId != curItemEntry->menuId) || (newItemId != curItemEntry->id)) {
// Selection changed, fix up new selection if required
@@ -801,6 +811,9 @@ GuiMenuItemEntry *GfxMenu::interactiveWithKeyboard() {
case kSciKeyLeft:
case kSciKeyRight:
curEvent.character = kSciKeyDown;
+ break;
+ default:
+ break;
}
}
} while (newItemEntry->separatorLine);
diff --git a/engines/sci/graphics/palette.cpp b/engines/sci/graphics/palette.cpp
index bc0b8485d2..4b19f27f82 100644
--- a/engines/sci/graphics/palette.cpp
+++ b/engines/sci/graphics/palette.cpp
@@ -199,6 +199,8 @@ void GfxPalette::createFromData(const SciSpan<const byte> &data, Palette *palett
paletteOut->colors[colorNo].b = data[palOffset++];
}
break;
+ default:
+ break;
}
}
diff --git a/engines/sci/graphics/screen.cpp b/engines/sci/graphics/screen.cpp
index 4bb9f5f6f6..240fcbfd4d 100644
--- a/engines/sci/graphics/screen.cpp
+++ b/engines/sci/graphics/screen.cpp
@@ -724,6 +724,8 @@ void GfxScreen::debugShowMap(int mapNo) {
case 3:
_activeScreen = _displayScreen;
break;
+ default:
+ break;
}
copyToScreen();
}
diff --git a/engines/sci/graphics/screen_item32.cpp b/engines/sci/graphics/screen_item32.cpp
index c2ee0e43ed..c7888fa872 100644
--- a/engines/sci/graphics/screen_item32.cpp
+++ b/engines/sci/graphics/screen_item32.cpp
@@ -473,16 +473,18 @@ CelObj &ScreenItem::getCelObj() const {
switch (_celInfo.type) {
case kCelTypeView:
_celObj.reset(new CelObjView(_celInfo.resourceId, _celInfo.loopNo, _celInfo.celNo));
- break;
+ break;
case kCelTypePic:
error("Internal error, pic screen item with no cel.");
- break;
+ break;
case kCelTypeMem:
_celObj.reset(new CelObjMem(_celInfo.bitmap));
- break;
+ break;
case kCelTypeColor:
_celObj.reset(new CelObjColor(_celInfo.color, _insetRect.width(), _insetRect.height()));
- break;
+ break;
+ default:
+ break;
}
}
diff --git a/engines/sci/graphics/text16.cpp b/engines/sci/graphics/text16.cpp
index cdb7c260d4..8aba5587f2 100644
--- a/engines/sci/graphics/text16.cpp
+++ b/engines/sci/graphics/text16.cpp
@@ -138,6 +138,8 @@ int16 GfxText16::CodeProcessing(const char *&text, GuiResourceId orgFontId, int1
}
}
break;
+ default:
+ break;
}
return textCodeSize;
}
@@ -245,6 +247,9 @@ int16 GfxText16::GetLongest(const char *&textPtr, int16 maxWidth, GuiResourceId
lastSpaceCharCount = curCharCount; // return count up to (but not including) breaking space
lastSpacePtr = textPtr + 1; // remember position right after the current space
break;
+
+ default:
+ break;
}
tempWidth += _font->getCharWidth(curChar);
diff --git a/engines/sci/graphics/transitions.cpp b/engines/sci/graphics/transitions.cpp
index 78f465ca3a..4c8fc89fc6 100644
--- a/engines/sci/graphics/transitions.cpp
+++ b/engines/sci/graphics/transitions.cpp
@@ -456,6 +456,9 @@ void GfxTransitions::straight(int16 number, bool blackoutFlag) {
newScreenRect.translate(0, 1);
}
break;
+
+ default:
+ break;
}
}
@@ -553,6 +556,9 @@ void GfxTransitions::scroll(int16 number) {
}
}
break;
+
+ default:
+ break;
}
// Copy over final position just in case
diff --git a/engines/sci/graphics/transitions32.cpp b/engines/sci/graphics/transitions32.cpp
index cb48927c52..0e00ab5ef3 100644
--- a/engines/sci/graphics/transitions32.cpp
+++ b/engines/sci/graphics/transitions32.cpp
@@ -133,43 +133,44 @@ void GfxTransitions32::processEffects(PlaneShowStyle &showStyle) {
switch(showStyle.type) {
case kShowStyleHShutterOut:
processHShutterOut(showStyle);
- break;
+ break;
case kShowStyleHShutterIn:
processHShutterIn(showStyle);
- break;
+ break;
case kShowStyleVShutterOut:
processVShutterOut(showStyle);
- break;
+ break;
case kShowStyleVShutterIn:
processVShutterIn(showStyle);
- break;
+ break;
case kShowStyleWipeLeft:
processWipeLeft(showStyle);
- break;
+ break;
case kShowStyleWipeRight:
processWipeRight(showStyle);
- break;
+ break;
case kShowStyleWipeUp:
processWipeUp(showStyle);
- break;
+ break;
case kShowStyleWipeDown:
processWipeDown(showStyle);
- break;
+ break;
case kShowStyleIrisOut:
processIrisOut(showStyle);
- break;
+ break;
case kShowStyleIrisIn:
processIrisIn(showStyle);
- break;
+ break;
case kShowStyleDissolveNoMorph:
case kShowStyleDissolve:
processPixelDissolve(showStyle);
- break;
+ break;
case kShowStyleNone:
case kShowStyleFadeOut:
case kShowStyleFadeIn:
case kShowStyleMorph:
- break;
+ default:
+ break;
}
}
diff --git a/engines/sci/graphics/view.cpp b/engines/sci/graphics/view.cpp
index c6d7baadc1..0c7aed3917 100644
--- a/engines/sci/graphics/view.cpp
+++ b/engines/sci/graphics/view.cpp
@@ -601,6 +601,7 @@ void unpackCelData(const SciSpan<const byte> &inBuffer, SciSpan<byte> &celBitmap
memset(outPtr + pixelNr, *literalPtr++, MIN<uint16>(runLength, pixelCount - pixelNr));
break;
case 0xC0: // skip the next pixels (transparency)
+ default:
break;
}
diff --git a/engines/sci/parser/vocabulary.cpp b/engines/sci/parser/vocabulary.cpp
index 387ddef8bf..6699ed25b8 100644
--- a/engines/sci/parser/vocabulary.cpp
+++ b/engines/sci/parser/vocabulary.cpp
@@ -531,6 +531,8 @@ void Vocabulary::debugDecipherSaidBlock(const SciSpan<const byte> &data) {
case 0xf9:
debugN(">");
break;
+ default:
+ break;
}
}
} while (nextItem != 0xff && addr != data.cend());
diff --git a/engines/sci/resource.cpp b/engines/sci/resource.cpp
index 765747b3df..779bd0acb2 100644
--- a/engines/sci/resource.cpp
+++ b/engines/sci/resource.cpp
@@ -1219,6 +1219,8 @@ const char *ResourceManager::versionDescription(ResVersion version) const {
return "SCI2/2.1";
case kResVersionSci3:
return "SCI3";
+ default:
+ break;
}
return "Version not valid";
@@ -2364,7 +2366,7 @@ ViewType ResourceManager::detectViewType() {
return kViewAmiga64;
return kViewVga;
- case 0:
+ case 0: {
// EGA or Amiga, try to read as Amiga view
if (res->size() < 10)
@@ -2412,6 +2414,10 @@ ViewType ResourceManager::detectViewType() {
return kViewAmiga;
}
+
+ default:
+ break;
+ }
}
}
diff --git a/engines/sci/resource_audio.cpp b/engines/sci/resource_audio.cpp
index b3878d7a16..c825196d93 100644
--- a/engines/sci/resource_audio.cpp
+++ b/engines/sci/resource_audio.cpp
@@ -52,7 +52,7 @@ AudioVolumeResourceSource::AudioVolumeResourceSource(ResourceManager *resMan, co
switch (compressionType) {
case MKTAG('M','P','3',' '):
case MKTAG('O','G','G',' '):
- case MKTAG('F','L','A','C'):
+ case MKTAG('F','L','A','C'): {
_audioCompressionType = compressionType;
const uint32 numEntries = fileStream->readUint32LE();
if (!numEntries) {
@@ -73,6 +73,9 @@ AudioVolumeResourceSource::AudioVolumeResourceSource(ResourceManager *resMan, co
}
lastEntry->size = fileStream->size() - lastEntry->offset;
+ }
+ break;
+ default:
break;
}
diff --git a/engines/sci/sound/audio.cpp b/engines/sci/sound/audio.cpp
index ad5dec6289..393c38724c 100644
--- a/engines/sci/sound/audio.cpp
+++ b/engines/sci/sound/audio.cpp
@@ -386,6 +386,8 @@ Audio::RewindableAudioStream *AudioPlayer::getAudioStream(uint32 number, uint32
audioSeekStream = Audio::makeFLACStream(compressedStream, DisposeAfterUse::YES);
#endif
break;
+ default:
+ break;
}
#else
error("Compressed audio file encountered, but no appropriate decoder is compiled in");
diff --git a/engines/sci/sound/drivers/amigamac.cpp b/engines/sci/sound/drivers/amigamac.cpp
index 3145af5666..70d131a25b 100644
--- a/engines/sci/sound/drivers/amigamac.cpp
+++ b/engines/sci/sound/drivers/amigamac.cpp
@@ -267,6 +267,8 @@ void MidiDriver_AmigaMac::playInstrument(int16 *dest, Voice *channel, int count)
/* Stop envelope */
channel->envelope_samples = -1;
break;
+ default:
+ break;
}
} else {
/* We haven't reached the target yet */
diff --git a/engines/sci/sound/midiparser_sci.cpp b/engines/sci/sound/midiparser_sci.cpp
index 22a5c6de9c..23fb9946f9 100644
--- a/engines/sci/sound/midiparser_sci.cpp
+++ b/engines/sci/sound/midiparser_sci.cpp
@@ -644,6 +644,9 @@ void MidiParser_SCI::parseNextEvent(EventInfo &info) {
"MidiParser_SCI::parseNextEvent: Unsupported event code %x",
info.event);
} // // System Common, Meta or SysEx event
+
+ default:
+ break;
}// switch (info.command())
}