Ignore:
Timestamp:
04/20/10 15:23:37 (14 years ago)
Author:
mmaipsl
Message:

Correct Stack overflow bug.
Now DEBUG_debug mode should work correctly.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/libIGCM/libIGCM_debug/libIGCM_debug.ksh

    r157 r264  
    111111 
    112112       # We add function call name on beginning of the stack 
    113        set +A IGCM_debug_Stack ${1} ${IGCM_debug_Stack[*]} 
     113       set +A IGCM_debug_Stack -- ${1} ${IGCM_debug_Stack[*]} 
    114114 
    115115       # We include the "null" Args in the beginning of the StackArgs 
     
    118118       if [ $# -gt 1 ]; then  
    119119           shift;  
    120            IGCM_debug_StackArgs=$(echo ${@} | sed -e "s/\ /,/g") >&2 
     120           IGCM_debug_StackArgs[0]=$(echo ${@} | sed -e "s/\ /,/g") >&2 
    121121       fi 
    122122       (( IGCM_debug_LenStack = IGCM_debug_LenStack + 1 )) 
     
    142142            IGCM_debug_StackArgs[0]="" 
    143143             
    144             set +A IGCM_debug_Stack ${IGCM_debug_Stack[*]} 
    145             set +A IGCM_debug_StackArgs ${IGCM_debug_StackArgs[*]} 
     144            set +A tmpStack -- ${IGCM_debug_Stack[*]} 
     145            unset IGCM_debug_Stack 
     146            set +A IGCM_debug_Stack -- ${tmpStack[*]}  
     147 
     148            set +A tmpStack -- ${IGCM_debug_StackArgs[*]} 
     149            unset IGCM_debug_StackArgs 
     150            set +A IGCM_debug_StackArgs -- ${tmpStack[*]} 
     151            unset tmpStack 
    146152        else 
    147153            echo 'IGCM_debug_Exit : stack is corrupted ! LenStack =' ${IGCM_debug_LenStack} 
     
    163169          #set -A IGCM_debug_Stack ${NULL_STR} 
    164170          #set -A IGCM_debug_StackArgs ${NULL_STR} 
     171          unset IGCM_debug_Stack 
     172          unset IGCM_debug_StackArgs 
    165173          IGCM_debug_Stack[0]=${NULL_STR} 
    166174          IGCM_debug_StackArgs[0]=${NULL_STR} 
Note: See TracChangeset for help on using the changeset viewer.