[Scummvm-git-logs] scummvm master -> 3717718148001713df1886d93c69a2858c4a8a8f

mduggan mgithub at guarana.org
Sat May 2 13:54:13 UTC 2020


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

Summary:
da2ac4eabc ULTIMA: Add PC98 Ultima 6 detection
3717718148 ULTIMA6: Fix 2 crash bugs


Commit: da2ac4eabc5c08cd53c499e52ffb20b29048474c
    https://github.com/scummvm/scummvm/commit/da2ac4eabc5c08cd53c499e52ffb20b29048474c
Author: Matthew Duggan (mgithub at guarana.org)
Date: 2020-05-02T22:53:21+09:00

Commit Message:
ULTIMA: Add PC98 Ultima 6 detection

Changed paths:
    engines/ultima/detection_tables.h


diff --git a/engines/ultima/detection_tables.h b/engines/ultima/detection_tables.h
index 9922182046..6801cb3340 100644
--- a/engines/ultima/detection_tables.h
+++ b/engines/ultima/detection_tables.h
@@ -119,6 +119,21 @@ static const UltimaGameDescription GAME_DESCRIPTIONS[] = {
 		GF_VGA_ENHANCED
 	},
 
+	// PC98 Ultima 6
+	{
+		{
+			"ultima6",
+			0,
+			AD_ENTRY1s("converse.a", "99975e79e7cae3ee24a8e33982f60fe4", 190920),
+			Common::JA_JPN,
+			Common::kPlatformPC98,
+			ADGF_UNSTABLE,
+			GUIO0()
+		},
+		GAME_ULTIMA6,
+		0
+	},
+
 	// Ultima VIII - Ultima Collection 1998
 	{
 		{


Commit: 3717718148001713df1886d93c69a2858c4a8a8f
    https://github.com/scummvm/scummvm/commit/3717718148001713df1886d93c69a2858c4a8a8f
Author: Matthew Duggan (mgithub at guarana.org)
Date: 2020-05-02T22:53:58+09:00

Commit Message:
ULTIMA6: Fix 2 crash bugs

Changed paths:
    engines/ultima/nuvie/gui/widgets/msg_scroll.cpp
    engines/ultima/nuvie/script/script_cutscene.cpp


diff --git a/engines/ultima/nuvie/gui/widgets/msg_scroll.cpp b/engines/ultima/nuvie/gui/widgets/msg_scroll.cpp
index 23d82e14b9..e58469777a 100644
--- a/engines/ultima/nuvie/gui/widgets/msg_scroll.cpp
+++ b/engines/ultima/nuvie/gui/widgets/msg_scroll.cpp
@@ -1042,7 +1042,7 @@ bool MsgScroll::input_buf_add_char(char c) {
 	input_char = 0;
 	if (permit_input != NULL)
 		input_buf_remove_char();
-	input_buf.append(&c, 1);
+	input_buf.append(1, c);
 	scroll_updated = true;
 
 // Add char to scroll buffer
diff --git a/engines/ultima/nuvie/script/script_cutscene.cpp b/engines/ultima/nuvie/script/script_cutscene.cpp
index 4eea51ca73..d13ef825a1 100644
--- a/engines/ultima/nuvie/script/script_cutscene.cpp
+++ b/engines/ultima/nuvie/script/script_cutscene.cpp
@@ -1210,14 +1210,17 @@ CSImage *ScriptCutscene::load_image(const char *filename, int idx, int sub_idx)
 	if (idx >= 0) {
 		U6Lzw lzw;
 
-		U6Lib_n libN;
 		uint32 decomp_size;
 		unsigned char *buf = lzw.decompress_file(path.c_str(), decomp_size);
 		NuvieIOBuffer io;
 		io.open(buf, decomp_size, false);
-		if (libN.open(&io, 4, NUVIE_GAME_MD)) {
-			if (shp->load(&libN, (uint32)idx)) {
-				image = new CSImage(shp);
+		{
+			// Note: libN needs to be destroyed before the io object.
+			U6Lib_n libN;
+			if (libN.open(&io, 4, NUVIE_GAME_MD)) {
+				if (shp->load(&libN, (uint32)idx)) {
+					image = new CSImage(shp);
+				}
 			}
 		}
 		free(buf);




More information about the Scummvm-git-logs mailing list