Title: [265431] trunk/Source/_javascript_Core
- Revision
- 265431
- Author
- [email protected]
- Date
- 2020-08-10 09:31:38 -0700 (Mon, 10 Aug 2020)
Log Message
REGRESSION(r261159) PokerBros only shows black screen
https://bugs.webkit.org/show_bug.cgi?id=215293
<rdar://problem/66073740>
Reviewed by Keith Miller.
The PokerBros app has some logic that was broken by the change in behavior of r261159.
It caused the app do do nothing except show a black screen upon opening.
Revert to the old behavior for this app until they update to iOS14.
* runtime/JSObject.cpp:
(JSC::needsOldStringName):
(JSC::JSObject::toStringName):
Modified Paths
Diff
Modified: trunk/Source/_javascript_Core/ChangeLog (265430 => 265431)
--- trunk/Source/_javascript_Core/ChangeLog 2020-08-10 16:29:17 UTC (rev 265430)
+++ trunk/Source/_javascript_Core/ChangeLog 2020-08-10 16:31:38 UTC (rev 265431)
@@ -1,3 +1,19 @@
+2020-08-10 Alex Christensen <[email protected]>
+
+ REGRESSION(r261159) PokerBros only shows black screen
+ https://bugs.webkit.org/show_bug.cgi?id=215293
+ <rdar://problem/66073740>
+
+ Reviewed by Keith Miller.
+
+ The PokerBros app has some logic that was broken by the change in behavior of r261159.
+ It caused the app do do nothing except show a black screen upon opening.
+ Revert to the old behavior for this app until they update to iOS14.
+
+ * runtime/JSObject.cpp:
+ (JSC::needsOldStringName):
+ (JSC::JSObject::toStringName):
+
2020-08-10 Yusuke Suzuki <[email protected]>
[JSC] JSFinalObject::finishCreation's ASSERT has stale condition
Modified: trunk/Source/_javascript_Core/runtime/JSObject.cpp (265430 => 265431)
--- trunk/Source/_javascript_Core/runtime/JSObject.cpp 2020-08-10 16:29:17 UTC (rev 265430)
+++ trunk/Source/_javascript_Core/runtime/JSObject.cpp 2020-08-10 16:31:38 UTC (rev 265431)
@@ -44,6 +44,10 @@
#include "VMInlines.h"
#include <wtf/Assertions.h>
+#if PLATFORM(IOS)
+#include <wtf/spi/darwin/dyldSPI.h>
+#endif
+
namespace JSC {
// We keep track of the size of the last array after it was grown. We use this
@@ -509,9 +513,27 @@
return info->className;
}
+#if PLATFORM(IOS)
+inline static bool isPokerBros()
+{
+ auto bundleID = CFBundleGetIdentifier(CFBundleGetMainBundle());
+ return bundleID
+ && CFEqual(bundleID, CFSTR("com.kpgame.PokerBros"))
+ && dyld_get_program_sdk_version() < DYLD_IOS_VERSION_14_0;
+}
+#endif
+
String JSObject::toStringName(const JSObject* object, JSGlobalObject* globalObject)
{
VM& vm = globalObject->vm();
+#if PLATFORM(IOS)
+ static bool needsOldStringName = isPokerBros();
+ if (UNLIKELY(needsOldStringName)) {
+ const ClassInfo* info = object->classInfo(vm);
+ ASSERT(info);
+ return info->className;
+ }
+#endif
auto scope = DECLARE_THROW_SCOPE(vm);
bool objectIsArray = isArray(globalObject, object);
RETURN_IF_EXCEPTION(scope, String());
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes