Merge branch 'master' of ssh://git.omp.am/home/omp/git/conky
authorNikolas Garofil <garo@dunaldi.garofil.be>
Sun, 8 Nov 2009 19:30:50 +0000 (20:30 +0100)
committerNikolas Garofil <garo@dunaldi.garofil.be>
Sun, 8 Nov 2009 19:30:50 +0000 (20:30 +0100)
src/conky.c
src/core.c
src/text_object.c

index c1cd1bc..133a9e7 100644 (file)
@@ -797,7 +797,7 @@ void generate_text_internal(char *p, int p_max_size,
  */
 #define DO_JUMP { \
        DBGP2("jumping"); \
-       obj = obj->sub; \
+       obj = obj->special_data; \
 }
 
 #define OBJ(a) break; case OBJ_##a:
index 4ac5943..eef425d 100644 (file)
@@ -1286,6 +1286,8 @@ void free_text_objects(struct text_object *root, int internal)
                        case OBJ_font:
                        case OBJ_image:
                        case OBJ_eval:
+                               free(data.s);
+                               break;
                        case OBJ_exec:
                        case OBJ_execbar:
 #ifdef X11
index c28bc42..3b0fb42 100644 (file)
@@ -107,7 +107,7 @@ static int push_ifblock(struct ifblock_stack_obj **ifblock_stack_top,
                case IFBLOCK_ENDIF:
                        if (!(*ifblock_stack_top))
                                CRIT_ERR(NULL, NULL, "got an endif without matching if");
-                       (*ifblock_stack_top)->obj->sub = obj;
+                       (*ifblock_stack_top)->obj->special_data = obj;
                        /* if there's some else in between, remove and free it */
                        if ((*ifblock_stack_top)->type == IFBLOCK_ELSE) {
                                stackobj = *ifblock_stack_top;
@@ -122,7 +122,7 @@ static int push_ifblock(struct ifblock_stack_obj **ifblock_stack_top,
                case IFBLOCK_ELSE:
                        if (!(*ifblock_stack_top))
                                CRIT_ERR(NULL, NULL, "got an else without matching if");
-                       (*ifblock_stack_top)->obj->sub = obj;
+                       (*ifblock_stack_top)->obj->special_data = obj;
                        /* fall through */
                case IFBLOCK_IF:
                        stackobj = malloc(sizeof(struct ifblock_stack_obj));