From 3cf178dd69daa89b9f3da72c5f87f8599eed6952 Mon Sep 17 00:00:00 2001 From: Rajeev Ranjan Date: Tue, 8 Nov 2011 15:04:54 +0530 Subject: [PATCH] Fixed prevent issues:56402,56263,56231,44680,18983,30939,30938,30759,30846,30648,30829,30828,56402,56382,56462,56427,56268,56287 Change-Id: I2c70dfa91c37a3582f2b5c9fa1f241ea5a7f50d5 --- src/bin/test_flip_page.c | 2 -- src/bin/test_map.c | 5 ++++- src/lib/elm_flip.c | 3 +-- src/lib/elm_gesture_layer.c | 14 +++++++------- src/lib/elm_map.c | 28 ++++++++++++++++++++++------ 5 files changed, 34 insertions(+), 18 deletions(-) diff --git a/src/bin/test_flip_page.c b/src/bin/test_flip_page.c index 2307a76..00a6180 100644 --- a/src/bin/test_flip_page.c +++ b/src/bin/test_flip_page.c @@ -447,8 +447,6 @@ _state_update(State *st) nw = 16; nh = 16; - if (nw < 1) nw = 1; - if (nh < 1) nh = 1; gszw = w / nw; gszh = h / nh; if (gszw < 4) gszw = 4; diff --git a/src/bin/test_map.c b/src/bin/test_map.c index a341cf9..42322f0 100644 --- a/src/bin/test_map.c +++ b/src/bin/test_map.c @@ -348,6 +348,7 @@ static void map_track_add(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__) { Evas_Object *fs, *bg, *vbox, *hbox, *sep; + const char *path = NULL; fs_win = elm_win_add(NULL, "fileselector", ELM_WIN_BASIC); elm_win_title_set(fs_win, "File Selector"); @@ -366,7 +367,9 @@ map_track_add(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED fs = elm_fileselector_add(fs_win); elm_fileselector_is_save_set(fs, EINA_TRUE); elm_fileselector_expandable_set(fs, EINA_FALSE); - elm_fileselector_path_set(fs, getenv("HOME")); + path = getenv("HOME"); + if (!path) path = "./"; + elm_fileselector_path_set(fs, path); evas_object_size_hint_weight_set(fs, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); evas_object_size_hint_align_set(fs, EVAS_HINT_FILL, EVAS_HINT_FILL); elm_box_pack_end(vbox, fs); diff --git a/src/lib/elm_flip.c b/src/lib/elm_flip.c index c000c66..89f47b7 100644 --- a/src/lib/elm_flip.c +++ b/src/lib/elm_flip.c @@ -551,8 +551,6 @@ _state_update(Widget_Data *st) nw = 16; nh = 16; - if (nw < 1) nw = 1; - if (nh < 1) nh = 1; gszw = w / nw; gszh = h / nh; if (gszw < 4) gszw = 4; @@ -1019,6 +1017,7 @@ _flip_do(Evas_Object *obj, double t, Elm_Flip_Mode mode, int lin, int rev) break; case ELM_FLIP_CUBE_UP: p = 1.0 - t; + pp = p; if (!lin) pp = (p * p); p = 1.0 - pp; deg = -90.0 * p; diff --git a/src/lib/elm_gesture_layer.c b/src/lib/elm_gesture_layer.c index 2362d26..8f8d017 100644 --- a/src/lib/elm_gesture_layer.c +++ b/src/lib/elm_gesture_layer.c @@ -297,11 +297,13 @@ compare_device(const void *data1, const void *data2) static Eina_List * _remove_touched_device(Eina_List *list, Pointer_Event *pe) { + Eina_List *lst = NULL; Pointer_Event *p = eina_list_search_unsorted(list, compare_device, pe); if (p) { + lst = eina_list_remove(list, p); free(p); - return eina_list_remove(list, p); + return lst; } return list; @@ -2712,7 +2714,7 @@ _rotate_test(Evas_Object *obj, Pointer_Event *pe, void *event_info, if (!wd->gesture[g_type]) return; Gesture_Info *gesture = wd->gesture[g_type]; - Rotate_Type *st = gesture->data; + Rotate_Type *st; if (gesture) { st = gesture->data; @@ -3048,6 +3050,8 @@ _event_process(void *data, Evas_Object *obj __UNUSED__, if (_make_pointer_event(data, event_info, event_type, &_pe)) pe = &_pe; + if (!pe) return; + if (IS_TESTED(ELM_GESTURE_N_LONG_TAPS)) _n_long_tap_test(data, pe, event_info, event_type, ELM_GESTURE_N_LONG_TAPS); @@ -3311,12 +3315,8 @@ elm_gesture_layer_add(Evas_Object *parent) Evas *e; Widget_Data *wd; - EINA_SAFETY_ON_NULL_RETURN_VAL(parent, NULL); + ELM_WIDGET_STANDARD_SETUP(wd, Widget_Data, parent, e, obj, NULL); - wd = ELM_NEW(Widget_Data); - e = evas_object_evas_get(parent); - if (!e) return NULL; - obj = elm_widget_add(e); ELM_SET_WIDTYPE(widtype, "gesture_layer"); elm_widget_type_set(obj, "gesture_layer"); elm_widget_sub_object_add(parent, obj); diff --git a/src/lib/elm_map.c b/src/lib/elm_map.c index 0af009f..eaa7afe 100644 --- a/src/lib/elm_map.c +++ b/src/lib/elm_map.c @@ -1318,13 +1318,22 @@ grid_create(Evas_Object *obj) if ((!wd) || (!wd->src)) return NULL; g = calloc(1, sizeof(Grid)); + if (!g) return NULL; g->zoom = wd->zoom; g->tsize = wd->tsize; g->wd = wd; - if (g->zoom > wd->src->zoom_max) return NULL; - if (g->zoom < wd->src->zoom_min) return NULL; + if (g->zoom > wd->src->zoom_max) + { + free(g); + return NULL; + } + if (g->zoom < wd->src->zoom_min) + { + free(g); + return NULL; + } int size = pow(2.0, wd->zoom); g->gw = size; @@ -2924,14 +2933,15 @@ _parse_kml(void *data) char *buf; fseek(f, 0, SEEK_SET); - buf = malloc(sz); + buf = malloc(sz + 1); if (buf) { + memset(buf, 0, sz + 1); if (fread(buf, 1, sz, f)) { eina_simple_xml_parse(buf, sz, EINA_TRUE, cb_route_dump, &dump); - free(buf); } + free(buf); } } fclose(f); @@ -3016,14 +3026,15 @@ _parse_name(void *data) char *buf; fseek(f, 0, SEEK_SET); - buf = malloc(sz); + buf = malloc(sz + 1); if (buf) { + memset(buf, 0, sz + 1); if (fread(buf, 1, sz, f)) { eina_simple_xml_parse(buf, sz, EINA_TRUE, cb_name_dump, &dump); - free(buf); } + free(buf); } } fclose(f); @@ -4693,5 +4704,10 @@ _nominatim_url_cb(Evas_Object *obj, int method, char *name, double lon, double l else if (method == ELM_MAP_NAME_METHOD_REVERSE) snprintf(buf, sizeof(buf), "%s/reverse?format=xml&lat=%lf&lon=%lf&zoom=%d&addressdetails=0", NAME_NOMINATIM_URL, lat, lon, wd->zoom); else strcpy(buf, ""); + if (str && str[0]) + { + free(str[0]); + free(str); + } return strdup(buf); } -- 2.7.4