diff --git a/legacy/edje/ChangeLog b/legacy/edje/ChangeLog index cc139d63bc..9374162e8d 100644 --- a/legacy/edje/ChangeLog +++ b/legacy/edje/ChangeLog @@ -247,3 +247,10 @@ 2011-12-19 Cedric Bail * Check existence of group at compile time also. + +2012-01-02 Carsten Haitzler (The Rasterman) + + * Fix prototype for edje_object_part_text_cursor_content_get() + as it returned a strduped string and not an internal one, so + this just formalizes its existing behavior correctly. + diff --git a/legacy/edje/src/lib/Edje.h b/legacy/edje/src/lib/Edje.h index c8094b41e5..233e96ec9a 100644 --- a/legacy/edje/src/lib/Edje.h +++ b/legacy/edje/src/lib/Edje.h @@ -2757,12 +2757,15 @@ EAPI Eina_Bool edje_object_part_text_cursor_is_visible_format_get(const E /** * @brief Returns the content (char) at the cursor position. * @see evas_textblock_cursor_content_get + * + * You must free the return (if not NULL) after you are done with it. * * @param obj A valid Evas_Object handle * @param part The part name * @param cur The cursor to use + * @return The character string pointed to (may be a multi-byte utf8 sequence) terminated by a nul byte. */ -EAPI const char *edje_object_part_text_cursor_content_get (const Evas_Object *obj, const char *part, Edje_Cursor cur); +EAPI char *edje_object_part_text_cursor_content_get (const Evas_Object *obj, const char *part, Edje_Cursor cur); /** * @brief Sets the cursor position to the given value diff --git a/legacy/edje/src/lib/edje_entry.c b/legacy/edje/src/lib/edje_entry.c index a6c1c040f1..5f9e3e1514 100644 --- a/legacy/edje/src/lib/edje_entry.c +++ b/legacy/edje/src/lib/edje_entry.c @@ -2783,7 +2783,7 @@ _edje_entry_cursor_is_visible_format_get(Edje_Real_Part *rp, Edje_Cursor cur) return evas_textblock_cursor_format_is_visible_get(c); } -const char * +char * _edje_entry_cursor_content_get(Edje_Real_Part *rp, Edje_Cursor cur) { static char *s = NULL; diff --git a/legacy/edje/src/lib/edje_private.h b/legacy/edje/src/lib/edje_private.h index cbb3e03dfa..038f51cb3c 100644 --- a/legacy/edje/src/lib/edje_private.h +++ b/legacy/edje/src/lib/edje_private.h @@ -1915,7 +1915,7 @@ void _edje_entry_cursor_line_end(Edje_Real_Part *rp, Edje_Cursor cur); Eina_Bool _edje_entry_cursor_coord_set(Edje_Real_Part *rp, Edje_Cursor cur, int x, int y); Eina_Bool _edje_entry_cursor_is_format_get(Edje_Real_Part *rp, Edje_Cursor cur); Eina_Bool _edje_entry_cursor_is_visible_format_get(Edje_Real_Part *rp, Edje_Cursor cur); -const char *_edje_entry_cursor_content_get(Edje_Real_Part *rp, Edje_Cursor cur); +char *_edje_entry_cursor_content_get(Edje_Real_Part *rp, Edje_Cursor cur); void _edje_entry_cursor_pos_set(Edje_Real_Part *rp, Edje_Cursor cur, int pos); int _edje_entry_cursor_pos_get(Edje_Real_Part *rp, Edje_Cursor cur); void _edje_entry_input_panel_layout_set(Edje_Real_Part *rp, Edje_Input_Panel_Layout layout); diff --git a/legacy/edje/src/lib/edje_util.c b/legacy/edje/src/lib/edje_util.c index 110c423e96..6e0da6a9cf 100644 --- a/legacy/edje/src/lib/edje_util.c +++ b/legacy/edje/src/lib/edje_util.c @@ -1675,7 +1675,7 @@ edje_object_part_text_cursor_is_visible_format_get(const Evas_Object *obj, const return 0; } -EAPI const char * +EAPI char * edje_object_part_text_cursor_content_get(const Evas_Object *obj, const char *part, Edje_Cursor cur) { Edje *ed;