support for __cxa_atexit argument

This commit is contained in:
Alon Zakai 2011-04-24 19:44:02 -07:00
Родитель 2fb5e321d9
Коммит 9f0ba583d6
2 изменённых файлов: 5 добавлений и 4 удалений

Просмотреть файл

@ -514,8 +514,8 @@ var Library = {
throw 'exit(' + status + ') called, at ' + new Error().stack;
},
atexit: function(func) {
__ATEXIT__.push(func);
atexit: function(func, arg) {
__ATEXIT__.push({ func: func, arg: arg });
},
__cxa_atexit: 'atexit',

Просмотреть файл

@ -287,11 +287,12 @@ function __initializeRuntime__() {
function __shutdownRuntime__() {
while( __ATEXIT__.length > 0) {
var func = __ATEXIT__.pop();
var atexit = __ATEXIT__.pop();
var func = atexit.func;
if (typeof func === 'number') {
func = FUNCTION_TABLE[func];
}
func();
func(atexit.arg);
}
}