forked from enlightenment/efl
ecore_x/xcb: fix use of uninitialized var + leak--. Fix #1786
SVN revision: 82730
This commit is contained in:
parent
a7e55676fa
commit
aa8a1eb727
|
@ -1,3 +1,9 @@
|
|||
2013-01-13 Boris Faure (billiob)
|
||||
|
||||
* Fixed condition based on uninitialized value in ecore_x_selection
|
||||
(both xlib and xcb).
|
||||
* Fixed a leaked when no selection converter matches.
|
||||
|
||||
2013-01-11 Tom Hacohen (TAsn)
|
||||
|
||||
* Static libs: Updated liblinebreak to libunibreak's latest version.
|
||||
|
|
|
@ -449,7 +449,7 @@ ecore_x_selection_convert(Ecore_X_Atom selection,
|
|||
{
|
||||
Ecore_X_Selection_Intern *sel;
|
||||
Ecore_X_Selection_Converter *cnv;
|
||||
void *data;
|
||||
void *data = NULL;
|
||||
char *tgt_str;
|
||||
|
||||
LOGFN(__FILE__, __LINE__, __FUNCTION__);
|
||||
|
@ -461,7 +461,7 @@ ecore_x_selection_convert(Ecore_X_Atom selection,
|
|||
{
|
||||
if (cnv->target == target)
|
||||
{
|
||||
int r = 0;
|
||||
int r;
|
||||
|
||||
r = cnv->convert(tgt_str, sel->data, sel->length, &data, size,
|
||||
targtype, typesize);
|
||||
|
@ -475,6 +475,7 @@ ecore_x_selection_convert(Ecore_X_Atom selection,
|
|||
return EINA_FALSE;
|
||||
}
|
||||
}
|
||||
free(tgt_str);
|
||||
|
||||
return EINA_FALSE;
|
||||
}
|
||||
|
|
|
@ -545,7 +545,7 @@ ecore_x_selection_convert(Ecore_X_Atom selection,
|
|||
{
|
||||
Ecore_X_Selection_Intern *sel;
|
||||
Ecore_X_Selection_Converter *cnv;
|
||||
void *data;
|
||||
void *data = NULL;
|
||||
char *tgt_str;
|
||||
|
||||
LOGFN(__FILE__, __LINE__, __FUNCTION__);
|
||||
|
@ -569,6 +569,7 @@ ecore_x_selection_convert(Ecore_X_Atom selection,
|
|||
return EINA_FALSE;
|
||||
}
|
||||
}
|
||||
free(tgt_str);
|
||||
|
||||
/* ICCCM says "If the selection cannot be converted into a form based on the target (and parameters, if any), the owner should refuse the SelectionRequest as previously described." */
|
||||
return EINA_FALSE;
|
||||
|
|
Loading…
Reference in New Issue