Changeset 1203

Show
Ignore:
Timestamp:
03/04/2010 11:32:37 AM (6 months ago)
Author:
Paroxysm
Message:

FIXED: Crash fix when passing in functions that use a colon.

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • Trunk/src/LuaEngine/LUAEngine.cpp

    r1202 r1203  
    498498                        int top = lua_gettop(L); 
    499499                        char * copy = strdup(functionName); 
    500                         char * token = strtok(copy,"."); 
    501                         if(strpbrk(functionName,".") == NULL) 
     500                        char * token = strtok(copy,".:"); 
     501                        if(strpbrk(functionName,".:") == NULL) 
    502502                        { 
    503503                                lua_getglobal(L,functionName); 
     
    524524                                        else if(lua_istable(L,-1) ) 
    525525                                        { 
    526                                                 token = strtok(NULL,"."); 
     526                                                token = strtok(NULL,".:"); 
    527527                                                continue; 
    528528                                        } 
     
    568568                        int top = lua_gettop(L); 
    569569                        char * copy = strdup(functionName); 
    570                         char * token = strtok(copy, "."); 
    571                         if (strpbrk(functionName,".") == NULL) 
     570                        char * token = strtok(copy, ".:"); 
     571                        if (strpbrk(functionName,".:") == NULL) 
    572572                        { 
    573573                                lua_getglobal(L,functionName); 
     
    594594                                        else if (lua_istable(L,-1) ) 
    595595                                        { 
    596                                                 token = strtok(NULL,"."); 
     596                                                token = strtok(NULL,".:"); 
    597597                                                continue; 
    598598                                        } 
     
    633633                        int top = lua_gettop(L); 
    634634                        char * copy = strdup(functionName); 
    635                         char * token = strtok(copy, "."); 
    636                         if( strpbrk(functionName,".") == NULL) 
     635                        char * token = strtok(copy, ":."); 
     636                        if( strpbrk(functionName,".:") == NULL) 
    637637                        { 
    638638                                lua_getglobal(L,functionName); 
     
    659659                                        else if(lua_istable(L,-1) ) 
    660660                                        { 
    661                                                 token = strtok(NULL,"."); 
     661                                                token = strtok(NULL,".:"); 
    662662                                                continue; 
    663663                                        } 
     
    698698                        int top = lua_gettop(L); 
    699699                        char * copy = strdup(functionName); 
    700                         char * token = strtok(copy, "."); 
    701                         if(strpbrk(functionName,".") == NULL) 
     700                        char * token = strtok(copy, ".:"); 
     701                        if(strpbrk(functionName,".:") == NULL) 
    702702                        { 
    703703                                lua_getglobal(L,functionName); 
     
    724724                                        else if(lua_istable(L,-1) ) 
    725725                                        { 
    726                                                 token = strtok(NULL,"."); 
     726                                                token = strtok(NULL,".:"); 
    727727                                                continue; 
    728728                                        } 
     
    763763                        int top = lua_gettop(L); 
    764764                        char * copy = strdup(functionName); 
    765                         char * token = strtok(copy, "."); 
    766                         if(strpbrk(functionName,".") == NULL) 
     765                        char * token = strtok(copy, ".:"); 
     766                        if(strpbrk(functionName,".:") == NULL) 
    767767                        { 
    768768                                lua_getglobal(L,functionName); 
     
    789789                                        else if(lua_istable(L,-1) ) 
    790790                                        { 
    791                                                 token = strtok(NULL,"."); 
     791                                                token = strtok(NULL,".:"); 
    792792                                                continue; 
    793793                                        } 
     
    828828                        int top = lua_gettop(L); 
    829829                        char * copy = strdup(functionName); 
    830                         char * token = strtok(copy, "."); 
    831                         if(strpbrk(functionName,".") == NULL) 
     830                        char * token = strtok(copy, ".:"); 
     831                        if(strpbrk(functionName,".:") == NULL) 
    832832                        { 
    833833                                lua_getglobal(L,functionName); 
     
    854854                                        else if(lua_istable(L,-1) ) 
    855855                                        { 
    856                                                 token = strtok(NULL,"."); 
     856                                                token = strtok(NULL,".:"); 
    857857                                                continue; 
    858858                                        } 
     
    892892                        int top = lua_gettop(L); 
    893893                        char * copy = strdup(functionName); 
    894                         char * token = strtok(copy, "."); 
    895                         if(strpbrk(functionName,".") == NULL) 
     894                        char * token = strtok(copy, ":."); 
     895                        if(strpbrk(functionName,":.") == NULL) 
    896896                        { 
    897897                                lua_getglobal(L,functionName); 
     
    918918                                        else if(lua_istable(L,-1) ) 
    919919                                        { 
    920                                                 token = strtok(NULL,"."); 
     920                                                token = strtok(NULL,".:"); 
    921921                                                continue; 
    922922                                        } 
     
    956956                        int top = lua_gettop(L); 
    957957                        char * copy = strdup(functionName); 
    958                         char * token = strtok(copy, "."); 
    959                         if(strpbrk(functionName,".") == NULL) 
     958                        char * token = strtok(copy, ".:"); 
     959                        if(strpbrk(functionName,".:") == NULL) 
    960960                        { 
    961961                                lua_getglobal(L,functionName); 
     
    979979                                        else if(lua_istable(L,-1) ) 
    980980                                        { 
    981                                                 token = strtok(NULL,"."); 
     981                                                token = strtok(NULL,".:"); 
    982982                                                continue; 
    983983                                        } 
     
    24072407        //Create a new global state that will server as the lua universe. 
    24082408        lu = lua_open(); 
     2409        assert(lu != NULL); 
    24092410 
    24102411        LoadScripts();