[Scummvm-git-logs] scummvm branch-2-1 -> 5f889bc97d0eb06d1c19bff1a15e610886c8e83e
antoniou79
antoniou at cti.gr
Tue Nov 5 14:01:01 CET 2019
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:
12c41aefd3 ANDROID: Disable verification of certificates validity for cloud saving
5f889bc97d BLADERUNNER: #11239 Fix buggy state and saved games for Desk Clerk
Commit: 12c41aefd3fc4534ce32d92a94bac6c3d7086cf6
https://github.com/scummvm/scummvm/commit/12c41aefd3fc4534ce32d92a94bac6c3d7086cf6
Author: Thanasis Antoniou (a.antoniou79 at gmail.com)
Date: 2019-11-05T13:43:35+02:00
Commit Message:
ANDROID: Disable verification of certificates validity for cloud saving
Also added macros for the plain (non-SDL) Android port __ANDROID_PLAIN_PORT__ and ANDROID_PLAIN_PORT
The workaround of this commit uses the same logic as for the Nintendo Switch port and should suffice for testing purposes. It should be replaced by more elaborate code of installing and maintaining a certificates pem file.
Changed paths:
backends/networking/curl/networkreadstream.cpp
configure
dists/android/AndroidManifest.xml
dists/android/AndroidManifest.xml.in
diff --git a/backends/networking/curl/networkreadstream.cpp b/backends/networking/curl/networkreadstream.cpp
index be97794..59d2a54 100644
--- a/backends/networking/curl/networkreadstream.cpp
+++ b/backends/networking/curl/networkreadstream.cpp
@@ -84,9 +84,10 @@ void NetworkReadStream::init(const char *url, curl_slist *headersList, const byt
curl_easy_setopt(_easy, CURLOPT_NOPROGRESS, 0L);
curl_easy_setopt(_easy, CURLOPT_PROGRESSFUNCTION, curlProgressCallbackOlder);
curl_easy_setopt(_easy, CURLOPT_PROGRESSDATA, this);
-#ifdef NINTENDO_SWITCH
+#if defined NINTENDO_SWITCH || defined ANDROID_PLAIN_PORT
curl_easy_setopt(_easy, CURLOPT_SSL_VERIFYPEER, 0);
#endif
+
#if LIBCURL_VERSION_NUM >= 0x072000
// CURLOPT_XFERINFOFUNCTION introduced in libcurl 7.32.0
// CURLOPT_PROGRESSFUNCTION is used as a backup plan in case older version is used
@@ -139,9 +140,10 @@ void NetworkReadStream::init(const char *url, curl_slist *headersList, Common::H
curl_easy_setopt(_easy, CURLOPT_NOPROGRESS, 0L);
curl_easy_setopt(_easy, CURLOPT_PROGRESSFUNCTION, curlProgressCallbackOlder);
curl_easy_setopt(_easy, CURLOPT_PROGRESSDATA, this);
-#ifdef NINTENDO_SWITCH
+#if defined NINTENDO_SWITCH || defined ANDROID_PLAIN_PORT
curl_easy_setopt(_easy, CURLOPT_SSL_VERIFYPEER, 0);
#endif
+
#if LIBCURL_VERSION_NUM >= 0x072000
// CURLOPT_XFERINFOFUNCTION introduced in libcurl 7.32.0
// CURLOPT_PROGRESSFUNCTION is used as a backup plan in case older version is used
diff --git a/configure b/configure
index 73aba4c..4575a18 100755
--- a/configure
+++ b/configure
@@ -3065,6 +3065,7 @@ if test -n "$_host"; then
_port_mk="backends/platform/3ds/3ds.mk"
;;
android | android-arm | android-v7a | android-arm-v7a | android-arm64-v8a | android-mips | android-mips64 | android-x86 | android-x86_64 | ouya)
+ DEFINES="$DEFINES -D__ANDROID_PLAIN_PORT__ -DANDROID_PLAIN_PORT"
# we link a .so as default
append_var LDFLAGS "-shared"
append_var LDFLAGS "-Wl,-Bsymbolic,--no-undefined"
diff --git a/dists/android/AndroidManifest.xml b/dists/android/AndroidManifest.xml
index a0d62e7..6abd3b8 100644
--- a/dists/android/AndroidManifest.xml
+++ b/dists/android/AndroidManifest.xml
@@ -21,6 +21,12 @@
<uses-permission
android:name="android.permission.ACCESS_WIFI_STATE"/>
+ <uses-permission
+ android:name="android.permission.INTERNET" />
+
+ <uses-permission
+ android:name="android.permission.ACCESS_NETWORK_STATE" />
+
<uses-feature
android:name="android.hardware.wifi"
android:required="false"/>
diff --git a/dists/android/AndroidManifest.xml.in b/dists/android/AndroidManifest.xml.in
index 6b7ee73..17757d0 100644
--- a/dists/android/AndroidManifest.xml.in
+++ b/dists/android/AndroidManifest.xml.in
@@ -21,6 +21,12 @@
<uses-permission
android:name="android.permission.ACCESS_WIFI_STATE"/>
+ <uses-permission
+ android:name="android.permission.INTERNET" />
+
+ <uses-permission
+ android:name="android.permission.ACCESS_NETWORK_STATE" />
+
<uses-feature
android:name="android.hardware.wifi"
android:required="false"/>
Commit: 5f889bc97d0eb06d1c19bff1a15e610886c8e83e
https://github.com/scummvm/scummvm/commit/5f889bc97d0eb06d1c19bff1a15e610886c8e83e
Author: Thanasis Antoniou (a.antoniou79 at gmail.com)
Date: 2019-11-05T13:43:47+02:00
Commit Message:
BLADERUNNER: #11239 Fix buggy state and saved games for Desk Clerk
Resolves ticket #11239
Occurs when McCoy leaves the scene with Leon and Desk Clerk too fast, before Leon drops the clerk
Crash happens only when using CDFRAMES, but the animation would be bugged even when using HDFRAMES.DAT
Changed paths:
engines/bladerunner/script/ai/desk_clerk.cpp
diff --git a/engines/bladerunner/script/ai/desk_clerk.cpp b/engines/bladerunner/script/ai/desk_clerk.cpp
index 8b1e91f..d7110bc 100644
--- a/engines/bladerunner/script/ai/desk_clerk.cpp
+++ b/engines/bladerunner/script/ai/desk_clerk.cpp
@@ -122,6 +122,12 @@ bool AIScriptDeskClerk::GoalChanged(int currentGoalNumber, int newGoalNumber) {
case kGoalDeskClerkRecovered:
Actor_Put_In_Set(kActorDeskClerk, kSetCT09);
Actor_Set_At_XYZ(kActorDeskClerk, 282.0f, 360.52f, 743.0f, 513);
+#if BLADERUNNER_ORIGINAL_BUGS
+#else
+ Actor_Change_Animation_Mode(kActorDeskClerk, kAnimationModeIdle);
+ _animationFrame = 0;
+ _animationState = 0;
+#endif // BLADERUNNER_ORIGINAL_BUGS
break;
case kGoalDeskClerkKnockedOut:
// fall through
@@ -135,6 +141,32 @@ bool AIScriptDeskClerk::GoalChanged(int currentGoalNumber, int newGoalNumber) {
bool AIScriptDeskClerk::UpdateAnimation(int *animation, int *frame) {
+#if BLADERUNNER_ORIGINAL_BUGS
+#else
+ // Fixing a bug for when the Clerk gets stuck in animation id 668, after Act 3:
+ // - when using HDFRAMES, the clerk will briefly be in the choking animation when McCoy re-enters
+ // - when using CDFRAMES, the game would crash with a message "Unable to locate page 2214 for animation 668 frame 4!"
+ // This occurs when:
+ // The player walks out too fast from the scene where Leon is choking the clerk in Act 3.
+ // Hence, Leon's AI script's OtherAgentExitedThisScene() is triggered, Leon is gone,
+ // and DeskClerk goal is set to kGoalDeskClerkKnockedOut which puts him in kSetFreeSlotH without changing his animation id.
+ // Thus later on, when the player leaves Chinatown and returns, DeskClerk's (update()) will set his goal to kGoalDeskClerkRecovered
+ // In Act 4, the CDFRAMES#.DAT method loads a reduced number of animations for DeskClerk causing the crash when McCoy visits the Yukon lobby.
+ //
+ // The following fix will work with awry saved games too (even from the original game in theory),
+ // that have this buggy state stored.
+ // We also include the rest of the problematic states that are missing animations in Act 4
+ // (ie. all _animationState >= 6)
+ if (Global_Variable_Query(kVariableChapter) > 3
+ && _animationState >= 6
+ ) {
+ Actor_Change_Animation_Mode(kActorDeskClerk, kAnimationModeIdle);
+ *animation = 661;
+ _animationFrame = 0;
+ _animationState = 0;
+ }
+#endif // BLADERUNNER_ORIGINAL_BUGS
+
switch (_animationState) {
case 0:
if (_flag1) {
More information about the Scummvm-git-logs
mailing list