Commit Graph

44 Commits

Author SHA1 Message Date
James Chen b2ecbca549 fix JSB Memory leaks and crashes (#18577)
* [game] Uses global compartment.

* fixed cocostudio bug.

* Fixes Memory leak for JSB.

* Memory leak in ActionsTest.js

* js_callfunc binding check whether jsThis is valid.

* Fixes potential crash in DownloadDelegator .

* CCLOG -> CCLOGINFO for garbage collect callback.

* jsb_c_proxy_s is a struct which contains a JS::Heap<> cpp object. Need to use `new`/`delete` to manage its memory.

* The functionality of JS controls C++ object's lifecycle isn't stable enough, please don't enable it now. Make an error if user enables it.

* Compilation error fixes.

* Removes unused JSAutoCompartment since we use JS_EnterCompartment/JS_LeaveCompartment now.
2018-01-10 14:39:45 +08:00
James Chen 907b6fda75 Uses NDK r16 to generate js/lua binding code (#18536) 2017-12-07 13:34:12 +08:00
pandamicro 75383bdcde Jsb improvements (#17513)
* Cleanup ScriptingCore code

* Add jsb.ENABLE_GC_FOR_NATIVE_OBJECTS to indicate the memory model

* Use incremental GC

* Improve ScriptingCore::executeFunctionWithOwner performance

* Support ScriptingCore::executeGlobalFunction

* Reuse js objects for get_or_create_weak_jsobject reduce memory usage

* Fix sequence / spawn js object lost issue

* Improve wrappers with cppOwner system
2017-03-16 09:42:16 +08:00
pandamicro 0eec73ba43 Bindings fix and assets manger ex fix (#17115)
* Fix custom event being discard during event emission

* Fix tilemap black line issue

* Fix auto bindings config

* Adapt websocket to new memory model

* Improve cocos2d_specifics code stability

* Fix issue with get_or_create_js_object function

* Improve memory usage in function wrapper invocation

* Use JS Function bind to avoid memory tracking issues

* Support size parameter to collect total byte size before update process

* Fix download resuming issue on Android

* Remove temporary assets when temporary manifest is invalid or out of date

* Use version compare handle to compare manifests versions

* Support max concurrent tasks setting & download verify callback

* Add Manifest::Asset conversion

* Avoid crash caused by wrappers

* Sync implementation of tested and published AssetsManagerEx from Cocos Creator

* Fix linux compilation issues
2017-03-15 16:09:02 +08:00
CocosRobot d07794052f Update license to 2017 (#17362)
* Typo: CopyRight -> Copyright

* Copyright update: chukong-inc.com -> Chukong Technologies Inc.

* [js files] Copyright update: 2014 -> 2014-2017

* [cpp files] Copyright update: 2014 -> 2014-2017

* Copyright update: 2015 -> 2015-2017

* [js files] Copyright update: 2014 -> 2014-2017

* Copyright update: 2016 -> 2016-2017

* Copyright update: 2013 -> 2013-2017

* Copyright update: 201?-201? -> 201?-2017

* License year fixes.

* Liscene year fix in CCRay.cpp

* Updates license years in CCGLProgramState.h & CCGLProgramStateCache.h
2017-02-14 14:36:57 +08:00
pandamicro a715e3169f Sync issue fixes from creator (#17041)
* Add EventDispatcher#hasEventListener (sync from creator)

* Fix function wrapper using js object during its gc

* Support more system languages

* Direct log/error for better understanding problems & add sys.now

* Synchronize Editbox APIs

* Synchronize Scheduler.PRIORITY_NON_SYSTEM const

* Upgrade web engine

* Upgrade test cases

* Manually bind EventDispatcher::addCustomEventListener to avoid memory issue

* Manual bind EventListeners’ create to avoid memory issue

* Fix compilation issue when COCOS_DEBUG = 2

* Unify function name of Texture2D::releaseTexture

* Fix compilation issues and update web & bindings-generator

* Fix lua compilation issue

* Use %ld instead of %zd

* Separate FinalizeHook for ref objects and non ref objects

* Fix spine TrackEntry recursive conversion issue by using getter

* Fix crash during Wrappers deallocation (possible to have leak)

* Increase default JS heap to 32 mb

* Update engine version

* Add change log of web engine

* Improve cc.formatStr

* Fix chipmunk crash issues when using setDefaultCollisionHandler

* Add change log for JSB and update web engine ref
2016-12-21 13:39:34 +08:00
pandamicro 5823f5792b Synchronize creator engine bug fixes and upgrade web engine (#17003)
* Add EventDispatcher#hasEventListener (sync from creator)

* Fix function wrapper using js object during its gc

* Support more system languages

* Direct log/error for better understanding problems & add sys.now

* Synchronize Editbox APIs

* Synchronize Scheduler.PRIORITY_NON_SYSTEM const

* Upgrade web engine

* Upgrade test cases

* Manually bind EventDispatcher::addCustomEventListener to avoid memory issue

* Manual bind EventListeners’ create to avoid memory issue

* Fix compilation issue when COCOS_DEBUG = 2

* Unify function name of Texture2D::releaseTexture

* Fix compilation issues and update web & bindings-generator

* Fix lua compilation issue

* Use %ld instead of %zd
2016-12-14 09:27:47 +08:00
James Chen 5bfd110424 Fixes jsval_to_std_string could not convert number to string. (#16504)
Don't use deprecated method in ActionsProgressTest.
2016-09-05 10:02:05 +08:00
minggo 04fd2b16b2 merge v3.13 back to v3 2016-08-29 11:57:13 +08:00
pandamicro f0be4f3069 Merge part of Cocos2d-x-lite (#16380)
* Update js auto binding settings with new ndk version

* Remove unnecessary property from Ref

* Merge part of Cocos2d-x-lite :
1. Improve network bindings
2. Use nullptr instead of NULL
3. Remove usage of some deprecated APIs
4. Add some defensive code and cleanup

* Fix spine track entry circle referencing issue

* cocos2d/cocos2d-x#16327: Fix global object leak issue in JSB

* Improve ScriptingCore::evalString, old implementation have been deprecated in Spidermonkey

* Update JS versions

* Add docs for web v3.13

* Improve ScriptingCore

* Manual merge cocos2d/cocos2d-x#16383 by DavidDeSimone

* Fix auto bindings configurations

* Update web ref
2016-08-19 16:28:47 +08:00
James Chen b135d512d2 Update copyright to 2016. (#16311) 2016-08-05 09:42:15 +08:00
mogemimi 15030ad4c3 Fix typos in log messages 2016-07-25 02:53:22 +09:00
minggo 3810854c45 use std::isnan instead of isnan to fix compiling errors 2016-05-30 18:19:10 +08:00
mogemimi 87be03fe9b Fix compilation error with Platform Toolset v120 for WinRT 2016-04-19 16:13:12 +09:00
mogemimi 19c2893509 Replace cc_utf8_to_utf16 with UTF8ToUTF16 to avoid deprecation warning 2016-04-18 19:50:59 +09:00
xpol 1e70fb5eb5 Remove include of cocos2d.h (#15435) 2016-04-18 15:09:21 +08:00
mogemimi 44080a04d8 Fix typos in comments and strings 2016-03-29 10:52:17 +09:00
Xpol Wan 90456d29ba Fixes 1605 include path in 541 files
using the tools/coding-style/include-linter.py with -f options.
2016-03-20 21:53:44 +08:00
pandamicro cb4d24e1ee Merge pull request #14759 from pandamicro/hbmemory
Implement Full GC Relied memory model
2016-02-14 14:48:01 +08:00
Wenhai Lin 4992037c5c Avoid creating temporary string objects 2016-02-03 23:12:37 +08:00
pandamicro 554523a201 Use JS::Heap instead of Mozilla::maybe to improve stability 2016-01-28 01:03:13 +08:00
pandamicro d6cedb88ec Remove JS::Persistent and move js object reference into JS scope 2016-01-24 19:47:26 +08:00
Wenhai Lin 66b0a0e9b1 Adds `std::nothrow` to the `new` statements 2015-12-16 17:06:56 +08:00
Ricardo Quesada 8b2dfb1a4b Mooooores fixes
but GC memory model doesn't work yet... somewhere someone is still
retaining a reference that prevents the whole thing from
releasing
2015-12-10 22:15:44 -08:00
mogemimi c7640c8aaf Replace 'resoucedata' with 'resourcedata' in JS Binding 2015-12-05 18:59:54 +09:00
mogemimi 745f54b421 Replace 'ResouceData' with 'ResourceData' 2015-12-05 18:59:54 +09:00
XiaoFeng 6fb65b5610 Editing code as comment.
Move CocosStudioExtension path and update related files.
2015-12-04 10:43:39 +08:00
pandamicro 81f590e52a Merge pull request #14478 from pandamicro/v3
Improved JS bindings with more secured memory management
2015-12-01 12:24:21 +08:00
pandamicro ae2b75c8be Fix issues causing by temporary RootedObject passed as function parameters 2015-11-27 01:35:06 +08:00
pandamicro 69b2b5720b Use JS::PersistentRooted instead of JS::Heap to prevent delegates and wrappers internal js object from GC
More elegant and secured way, potential crashes exists in previous implementation
2015-11-25 14:32:19 +08:00
XiaoFeng 32f21ca5be Binding ResouceData structure to js to fix auto compile error 2015-11-19 14:31:39 +08:00
江龙 4509a316cc add uniform conversion
relate issue:https://github.com/cocos2d/cocos2d-x/issues/13747
relate pr:https://github.com/cocos2d/bindings-generator/pull/191
2015-09-09 16:03:57 +08:00
jianglong0156 10d5b73c7e fix opengl test error
fix opengl test error, add the condition, when the data type is samewith long, it will reset data
relate pr:#13449
fix open gl show error
2015-08-20 17:42:26 +08:00
pandamicro 29b9ed685f Add BoneNode/SkeletonNode/SkinNode JS bindings 2015-07-24 15:48:34 +08:00
jianglong0156 85c40b6580 Merge pull request #8 from pandamicro/physics3d
Physics3d
2015-06-18 14:54:32 +08:00
pandamicro 3ffc0e6be6 Merge branch 'v3_navigation' of https://github.com/samuele3hu/cocos2d-x into physics3d 2015-06-18 09:20:37 +08:00
pandamicro 85e8a407b1 Merge branch 'navmesh' of https://github.com/jianglong0156/cocos2d-x into v3
# Conflicts:
#	tests/js-tests/project/Classes/AppDelegate.cpp
#	tools/tojs/genbindings.py
2015-06-17 19:58:24 +08:00
samuele3hu 683812d817 Update Physics3D test for js. 2015-06-17 18:50:55 +08:00
pandamicro df1219c92d Update manual conversion for sprite polygon 2015-06-12 12:56:37 +08:00
joshuastray 342734e3b5 Merge remote-tracking branch 'upstream/v3' into physics 2015-05-21 21:15:42 +08:00
joshuastray 83237b8dbd add physics3d js manual binding and tests 2015-05-21 18:05:49 +08:00
Dale Stammen 3523173594 removed CC_PLATFORM_WP8 2015-05-20 07:58:39 -07:00
joshuastray 234f4db8a0 add SpritePolygon binding && js tests 2015-05-11 17:04:23 +08:00
zhangbin b4f2d94109 Update js bindings & js tests. 2015-05-05 10:50:19 +08:00