diff options
Diffstat (limited to 'libX11/src/xlibi18n/lcPublic.c')
-rw-r--r-- | libX11/src/xlibi18n/lcPublic.c | 20 |
1 files changed, 8 insertions, 12 deletions
diff --git a/libX11/src/xlibi18n/lcPublic.c b/libX11/src/xlibi18n/lcPublic.c index 39ec0829b..98a7435fd 100644 --- a/libX11/src/xlibi18n/lcPublic.c +++ b/libX11/src/xlibi18n/lcPublic.c @@ -254,16 +254,14 @@ static void destroy_core( XLCd lcd) { - if (lcd->core) { - if (lcd->core->name) + if (lcd) { + if (lcd->core) { Xfree(lcd->core->name); - Xfree(lcd->core); + Xfree(lcd->core); + } + Xfree(lcd->methods); + Xfree(lcd); } - - if (lcd->methods) - Xfree(lcd->methods); - - Xfree(lcd); } static void @@ -274,10 +272,8 @@ destroy( _XlcDestroyLocaleDataBase(lcd); - if (pub->siname) - Xfree(pub->siname); - if (pub->encoding_name) - Xfree(pub->encoding_name); + Xfree(pub->siname); + Xfree(pub->encoding_name); destroy_core(lcd); } |