Quantcast
Channel: Cocos Forums - Latest topics
Viewing all articles
Browse latest Browse all 17070

[sdkbox AdColony ios]crash, listener is called without check

$
0
0

@jus18tin wrote:

Sample code will crash after garbage collected.

samle code:
https://github.com/sdkbox/sdkbox-sample-adcolony/tree/master/js

I added a menu to collect garbage

new cc.MenuItemFont("====clear===", function() {
                cc.log("======gc start=====");
                __jsc__.garbageCollect();
                cc.log("======gc end=====");
            })

After the menuItem clicked, it will crash when the listener, such as onAdColonyChange, called.
It will only crash on iOS.

here is the full log

2016-07-04 15:31:29.081 adcolony_js-mobile[2684:1707907] 
{
	cocos2d.x.version: cocos2d-x-3.9
	cocos2d.x.compiled_with_gl_state_cache: true
	cocos2d.x.build_type: DEBUG
	gl.supports_vertex_array_object: true
	cocos2d.x.compiled_with_profiler: false
	gl.renderer: Apple A9 GPU
	gl.vendor: Apple Inc.
	gl.max_texture_size: 4096
	gl.max_samples_allowed: 4
	gl.version: OpenGL ES 2.0 Apple A9 GPU - 77.14
	gl.supports_S3TC: false
	gl.supports_ATITC: false
	gl.supports_ETC1: false
	gl.max_texture_units: 8
	gl.supports_PVRTC: true
	gl.supports_NPOT: true
	gl.supports_discard_framebuffer: true
	gl.supports_BGRA8888: false
}

2016-07-04 15:31:29.164 adcolony_js-mobile[2684:1707907] cocos2d: fullPathForFilename: No file found at script/jsb_prepare.jsc. Possible missing file.
2016-07-04 15:31:29.294 adcolony_js-mobile[2684:1707907] cocos2d: fullPathForFilename: No file found at script/jsb_boot.jsc. Possible missing file.
2016-07-04 15:31:29.477 adcolony_js-mobile[2684:1707907] JS: Cocos2d-JS v3.9
2016-07-04 15:31:29.598 adcolony_js-mobile[2684:1707907] cocos2d: surface size: 640x1136
2016-07-04 15:31:29.601 adcolony_js-mobile[2684:1707907] JS: Sample Startup
2016-07-04 15:31:29.604 adcolony_js-mobile[2684:1707907] ADCOLONY 2.6.0.5 [info] AdColony library version: 2.6.0.5 32-bit production
2016-07-04 15:31:29.889 adcolony_js-mobile[2684:1708147] ADCOLONY 2.6.0.5 [info] Developer logging enabled
2016-07-04 15:31:31.647 adcolony_js-mobile[2684:1708147] ADCOLONY 2.6.0.5 [trace] Configuration succeeded!
2016-07-04 15:31:31.766 adcolony_js-mobile[2684:1708147] ADCOLONY 2.6.0.5 [info] Ads are ready for zone vzf8e4e97704c4445c87504e
2016-07-04 15:31:31.766 adcolony_js-mobile[2684:1708147] ADCOLONY 2.6.0.5 [info] Ads are ready for zone vzf8fb4670a60e4a139d01b5
2016-07-04 15:31:31.785 adcolony_js-mobile[2684:1707907] JS: onAdColonyChange
2016-07-04 15:31:31.785 adcolony_js-mobile[2684:1707907] JS:   dump:
2016-07-04 15:31:31.785 adcolony_js-mobile[2684:1707907] JS:   - name: v4vc
2016-07-04 15:31:31.785 adcolony_js-mobile[2684:1707907] JS:   - zoneID: vzf8e4e97704c4445c87504e
2016-07-04 15:31:31.785 adcolony_js-mobile[2684:1707907] JS:   - shown: false
2016-07-04 15:31:31.785 adcolony_js-mobile[2684:1707907] JS:   - iapEnabled: false
2016-07-04 15:31:31.785 adcolony_js-mobile[2684:1707907] JS:   - iapProductID: 
2016-07-04 15:31:31.785 adcolony_js-mobile[2684:1707907] JS:   - iapQuantity: 0
2016-07-04 15:31:31.786 adcolony_js-mobile[2684:1707907] JS:   - iapEngagementType: 0
2016-07-04 15:31:31.786 adcolony_js-mobile[2684:1707907] JS: true
2016-07-04 15:31:31.786 adcolony_js-mobile[2684:1707907] JS: onAdColonyChange
2016-07-04 15:31:31.786 adcolony_js-mobile[2684:1707907] JS:   dump:
2016-07-04 15:31:31.786 adcolony_js-mobile[2684:1707907] JS:   - name: video
2016-07-04 15:31:31.788 adcolony_js-mobile[2684:1707907] JS:   - zoneID: vzf8fb4670a60e4a139d01b5
2016-07-04 15:31:31.788 adcolony_js-mobile[2684:1707907] JS:   - shown: false
2016-07-04 15:31:31.788 adcolony_js-mobile[2684:1707907] JS:   - iapEnabled: false
2016-07-04 15:31:31.788 adcolony_js-mobile[2684:1707907] JS:   - iapProductID: 
2016-07-04 15:31:31.788 adcolony_js-mobile[2684:1707907] JS:   - iapQuantity: 0
2016-07-04 15:31:31.788 adcolony_js-mobile[2684:1707907] JS:   - iapEngagementType: 0
2016-07-04 15:31:31.788 adcolony_js-mobile[2684:1707907] JS: true

2016-07-04 15:31:38.318 adcolony_js-mobile[2684:1707907] JS: ======gc start=====
2016-07-04 15:31:38.323 adcolony_js-mobile[2684:1707907] JS: ======gc end=====
2016-07-04 15:31:45.536 adcolony_js-mobile[2684:1707907] JS: show v4vc
2016-07-04 15:31:45.537 adcolony_js-mobile[2684:1707907] ADCOLONY 2.6.0.5 [info] Video ad started playing in zone vzf8e4e97704c4445c87504e
2016-07-04 15:31:45.950 adcolony_js-mobile[2684:1707907] cocos2d: surface size: 640x1136
Process 2684 stopped
* thread #1: tid = 0x1a0f83, 0x0140f028 adcolony_js-mobile`JSAutoCompartment::JSAutoCompartment(JSContext*, JSObject*) + 20, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, address=0x70)
    frame #0: 0x0140f028 adcolony_js-mobile`JSAutoCompartment::JSAutoCompartment(JSContext*, JSObject*) + 20
adcolony_js-mobile`JSAutoCompartment::JSAutoCompartment:
->  0x140f028 <+20>: ldr    r3, [r2, #0x30]
    0x140f02a <+22>: add.w  r3, r3, #0x1
    0x140f02e <+26>: str    r3, [r2, #0x30]
    0x140f030 <+28>: str    r2, [r1, #0x4]
* thread #1: tid = 0x1a0f83, 0x0140f028 adcolony_js-mobile`JSAutoCompartment::JSAutoCompartment(JSContext*, JSObject*) + 20, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, address=0x70)
  * frame #0: 0x0140f028 adcolony_js-mobile`JSAutoCompartment::JSAutoCompartment(JSContext*, JSObject*) + 20
    frame #1: 0x000f876e adcolony_js-mobile`AdColonyListenerWrapper::onAdColonyStarted(this=0x1572fba4)::'lambda'()::operator()() const + 118 at PluginAdColonyJSHelper.cpp:263
    frame #2: 0x000f86f4 adcolony_js-mobile`void std::__1::__invoke_void_return_wrapper<void>::__call<AdColonyListenerWrapper::onAdColonyStarted(sdkbox::AdColonyAdInfo const&)::'lambda'()&>(AdColonyListenerWrapper::onAdColonyStarted(sdkbox::AdColonyAdInfo const&)::'lambda'()&&&) [inlined] decltype(__f=0x1572fba4)::'lambda'()&>(fp)(std::__1::forward<>(fp0))) std::__1::__invoke<AdColonyListenerWrapper::onAdColonyStarted(sdkbox::AdColonyAdInfo const&)::'lambda'()&>(AdColonyListenerWrapper::onAdColonyStarted(sdkbox::AdColonyAdInfo const&)::'lambda'()&&&) + 26 at __functional_base:416
    frame #3: 0x000f86ea adcolony_js-mobile`void std::__1::__invoke_void_return_wrapper<void>::__call<AdColonyListenerWrapper::onAdColonyStarted(__args=0x1572fba4)::'lambda'()&>(AdColonyListenerWrapper::onAdColonyStarted(sdkbox::AdColonyAdInfo const&)::'lambda'()&&&) + 16 at __functional_base:468
    frame #4: 0x000f8568 adcolony_js-mobile`std::__1::__function::__func<AdColonyListenerWrapper::onAdColonyStarted(sdkbox::AdColonyAdInfo const&)::'lambda'(), std::__1::allocator<AdColonyListenerWrapper::onAdColonyStarted(sdkbox::AdColonyAdInfo const&)::'lambda'()>, void ()>::operator(this=0x1572fba0)() + 24 at functional:1437
    frame #5: 0x00b20b5c adcolony_js-mobile`std::__1::function<void ()>::operator()() const + 100
    frame #6: 0x00316734 adcolony_js-mobile`cocos2d::Scheduler::update(float) + 1364
    frame #7: 0x00400212 adcolony_js-mobile`cocos2d::Director::drawScene() + 86
    frame #8: 0x00b18342 adcolony_js-mobile`-[CCEAGLView layoutSubviews] + 274
    frame #9: 0x25ec76fa UIKit`<redacted> + 714
    frame #10: 0x23f38568 QuartzCore`<redacted> + 128
    frame #11: 0x23f33d2c QuartzCore`<redacted> + 352
    frame #12: 0x23f33bbc QuartzCore`<redacted> + 16
    frame #13: 0x23f33080 QuartzCore`<redacted> + 368
    frame #14: 0x23f32d54 QuartzCore`<redacted> + 520
    frame #15: 0x23f2c4fe QuartzCore`<redacted> + 138
    frame #16: 0x218af2b0 CoreFoundation`<redacted> + 20
    frame #17: 0x218ad5a6 CoreFoundation`<redacted> + 282
    frame #18: 0x218ad9e4 CoreFoundation`<redacted> + 972
    frame #19: 0x217fc1c8 CoreFoundation`CFRunLoopRunSpecific + 516
    frame #20: 0x217fbfbc CoreFoundation`CFRunLoopRunInMode + 108
    frame #21: 0x22e18af8 GraphicsServices`GSEventRunModal + 160
    frame #22: 0x25f34434 UIKit`UIApplicationMain + 144
    frame #23: 0x000e907a adcolony_js-mobile`main(argc=1, argv=0x0206fc40) + 118 at main.m:13
    frame #24: 0x214a8872 libdyld.dylib`<redacted> + 2

Posts: 4

Participants: 2

Read full topic


Viewing all articles
Browse latest Browse all 17070

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>