[Scummvm-git-logs] scummvm master -> 44436a91f200785212bd8e1ce2cf7971d9714afe

sluicebox noreply at scummvm.org
Wed Nov 15 00:08:13 UTC 2023


This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
44436a91f2 SCI: Remove SciCallOrigin from `error` messages


Commit: 44436a91f200785212bd8e1ce2cf7971d9714afe
    https://github.com/scummvm/scummvm/commit/44436a91f200785212bd8e1ce2cf7971d9714afe
Author: sluicebox (22204938+sluicebox at users.noreply.github.com)
Date: 2023-11-14T16:06:45-08:00

Commit Message:
SCI: Remove SciCallOrigin from `error` messages

`errorString` now adds this context (and more) to `error` messages

Changed paths:
    engines/sci/engine/selector.cpp
    engines/sci/engine/vm.cpp
    engines/sci/engine/vm_types.cpp
    engines/sci/graphics/paint16.cpp


diff --git a/engines/sci/engine/selector.cpp b/engines/sci/engine/selector.cpp
index 8a8bacd1623..f5aa666d264 100644
--- a/engines/sci/engine/selector.cpp
+++ b/engines/sci/engine/selector.cpp
@@ -271,13 +271,11 @@ void writeSelector(SegManager *segMan, reg_t object, Selector selectorId, reg_t
 	ObjVarRef address;
 
 	if ((selectorId < 0) || (selectorId > (int)g_sci->getKernel()->getSelectorNamesSize())) {
-		const SciCallOrigin origin = g_sci->getEngineState()->getCurrentCallOrigin();
-		error("Attempt to write to invalid selector %d. Address %04x:%04x, %s", selectorId, PRINT_REG(object), origin.toString().c_str());
+		error("Attempt to write to invalid selector %d. Address %04x:%04x", selectorId, PRINT_REG(object));
 	}
 
 	if (lookupSelector(segMan, object, selectorId, &address, nullptr) != kSelectorVariable) {
-		const SciCallOrigin origin = g_sci->getEngineState()->getCurrentCallOrigin();
-		error("Selector '%s' of object could not be written to. Address %04x:%04x, %s", g_sci->getKernel()->getSelectorName(selectorId).c_str(), PRINT_REG(object), origin.toString().c_str());
+		error("Selector '%s' of object could not be written to. Address %04x:%04x", g_sci->getKernel()->getSelectorName(selectorId).c_str(), PRINT_REG(object));
 	}
 
 	if (g_sci->_debugState._activeBreakpointTypes & BREAK_SELECTORWRITE) {
@@ -305,12 +303,10 @@ void invokeSelector(EngineState *s, reg_t object, int selectorId,
 	slc_type = lookupSelector(s->_segMan, object, selectorId, nullptr, nullptr);
 
 	if (slc_type == kSelectorNone) {
-		const SciCallOrigin origin = g_sci->getEngineState()->getCurrentCallOrigin();
-		error("invokeSelector: Selector '%s' could not be invoked. Address %04x:%04x, %s", g_sci->getKernel()->getSelectorName(selectorId).c_str(), PRINT_REG(object), origin.toString().c_str());
+		error("invokeSelector: Selector '%s' could not be invoked. Address %04x:%04x", g_sci->getKernel()->getSelectorName(selectorId).c_str(), PRINT_REG(object));
 	}
 	if (slc_type == kSelectorVariable) {
-		const SciCallOrigin origin = g_sci->getEngineState()->getCurrentCallOrigin();
-		error("invokeSelector: Attempting to invoke variable selector %s. Address %04x:%04x, %s", g_sci->getKernel()->getSelectorName(selectorId).c_str(), PRINT_REG(object), origin.toString().c_str());
+		error("invokeSelector: Attempting to invoke variable selector %s. Address %04x:%04x", g_sci->getKernel()->getSelectorName(selectorId).c_str(), PRINT_REG(object));
 	}
 
 	for (i = 0; i < argc; i++)
@@ -338,8 +334,7 @@ SelectorType lookupSelector(SegManager *segMan, reg_t obj_location, Selector sel
 		selectorId &= ~1;
 
 	if (!obj) {
-		const SciCallOrigin origin = g_sci->getEngineState()->getCurrentCallOrigin();
-		error("lookupSelector: Attempt to send to non-object or invalid script. Address %04x:%04x, %s", PRINT_REG(obj_location), origin.toString().c_str());
+		error("lookupSelector: Attempt to send to non-object or invalid script. Address %04x:%04x", PRINT_REG(obj_location));
 	}
 
 	index = obj->locateVarSelector(segMan, selectorId);
diff --git a/engines/sci/engine/vm.cpp b/engines/sci/engine/vm.cpp
index fe71615bbda..a5bc6efc81e 100644
--- a/engines/sci/engine/vm.cpp
+++ b/engines/sci/engine/vm.cpp
@@ -131,7 +131,7 @@ static reg_t read_var(EngineState *s, int type, int index) {
 					s->variables[type][index] = NULL_REG;
 					break;
 #else
-					error("Uninitialized read for temp %d from %s", index, originReply.toString().c_str());
+					error("Uninitialized read for temp %d", index);
 #endif
 				}
 				assert(solution.type == WORKAROUND_FAKE);
@@ -330,7 +330,7 @@ static void callKernelFunc(EngineState *s, int kernelCallNr, int argc) {
 		case WORKAROUND_NONE: {
 			Common::String signatureDetailsStr;
 			kernel->signatureDebug(signatureDetailsStr, kernelCall.signature, argc, argv);
-			error("\n%s[VM] k%s[%x]: signature mismatch in %s", signatureDetailsStr.c_str(), kernelCall.name, kernelCallNr, originReply.toString().c_str());
+			error("\n%s[VM] k%s[%x]: signature mismatch", signatureDetailsStr.c_str(), kernelCall.name, kernelCallNr);
 			break;
 			}
 		case WORKAROUND_IGNORE: // don't do kernel call, leave acc alone
@@ -393,13 +393,11 @@ static void callKernelFunc(EngineState *s, int kernelCallNr, int argc) {
 				int callNameLen = strlen(kernelCall.name);
 				if (strncmp(kernelCall.name, kernelSubCall.name, callNameLen) == 0) {
 					const char *subCallName = kernelSubCall.name + callNameLen;
-					error("\n%s[VM] k%s(%s): signature mismatch in %s",
-						signatureDetailsStr.c_str(), kernelCall.name, subCallName,
-						originReply.toString().c_str());
+					error("\n%s[VM] k%s(%s): signature mismatch",
+						signatureDetailsStr.c_str(), kernelCall.name, subCallName);
 				}
-				error("\n%s[VM] k%s: signature mismatch in %s",
-					signatureDetailsStr.c_str(), kernelSubCall.name,
-					originReply.toString().c_str());
+				error("\n%s[VM] k%s: signature mismatch",
+					signatureDetailsStr.c_str(), kernelSubCall.name);
 				break;
 			}
 			case WORKAROUND_IGNORE: // don't do kernel call, leave acc alone
diff --git a/engines/sci/engine/vm_types.cpp b/engines/sci/engine/vm_types.cpp
index 52c628915b6..1c6ba270774 100644
--- a/engines/sci/engine/vm_types.cpp
+++ b/engines/sci/engine/vm_types.cpp
@@ -49,7 +49,7 @@ reg_t reg_t::lookForWorkaround(const reg_t right, const char *operation) const {
 	SciCallOrigin originReply;
 	SciWorkaroundSolution solution = trackOriginAndFindWorkaround(0, arithmeticWorkarounds, &originReply);
 	if (solution.type == WORKAROUND_NONE)
-		error("Invalid arithmetic operation (%s - params: %04x:%04x and %04x:%04x) from %s", operation, PRINT_REG(*this), PRINT_REG(right), originReply.toString().c_str());
+		error("Invalid arithmetic operation (%s - params: %04x:%04x and %04x:%04x)", operation, PRINT_REG(*this), PRINT_REG(right));
 	assert(solution.type == WORKAROUND_FAKE);
 	return make_reg(0, solution.value);
 }
diff --git a/engines/sci/graphics/paint16.cpp b/engines/sci/graphics/paint16.cpp
index dfbf4f07c3b..6cd0cc37ca3 100644
--- a/engines/sci/graphics/paint16.cpp
+++ b/engines/sci/graphics/paint16.cpp
@@ -557,7 +557,7 @@ reg_t GfxPaint16::kernelDisplay(const char *text, uint16 languageSplitter, int a
 			SciCallOrigin originReply;
 			SciWorkaroundSolution solution = trackOriginAndFindWorkaround(0, kDisplay_workarounds, &originReply);
 			if (solution.type == WORKAROUND_NONE)
-				error("Unknown kDisplay argument (%04x:%04x) from %s", PRINT_REG(displayArg), originReply.toString().c_str());
+				error("Unknown kDisplay argument (%04x:%04x)", PRINT_REG(displayArg));
 			assert(solution.type == WORKAROUND_IGNORE);
 			break;
 		}




More information about the Scummvm-git-logs mailing list