aboutsummaryrefslogtreecommitdiff
path: root/libobjc/selector.c
diff options
context:
space:
mode:
authorNicola Pero <nicola.pero@meta-innovation.com>2010-10-12 00:27:02 +0000
committerNicola Pero <nicola@gcc.gnu.org>2010-10-12 00:27:02 +0000
commit524660d2e3e96ac715623c052338c25a14938dfa (patch)
tree8c826840b836b21623b2673ebb37f3ee7aff55ab /libobjc/selector.c
parent4d218f5c7208f133fd302e0e0628d5d03401c4d1 (diff)
downloadgcc-524660d2e3e96ac715623c052338c25a14938dfa.zip
gcc-524660d2e3e96ac715623c052338c25a14938dfa.tar.gz
gcc-524660d2e3e96ac715623c052338c25a14938dfa.tar.bz2
In libobjc/: 2010-10-12 Nicola Pero <nicola.pero@meta-innovation.com>
In libobjc/: 2010-10-12 Nicola Pero <nicola.pero@meta-innovation.com> * selector.c (sel_getName): Return "<null selector>" for a NULL argument. (sel_get_name): Return 0 for a NULL argument. * objc/runtime.h (sel_getName): Updated documentation. * objc-private/hash.h (class_hash_table): Unused declaration removed. (module_hash_table): Same. * objc/deprecated/hash.h: Same changes. From-SVN: r165348
Diffstat (limited to 'libobjc/selector.c')
-rw-r--r--libobjc/selector.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/libobjc/selector.c b/libobjc/selector.c
index 93952fd..e51dd20 100644
--- a/libobjc/selector.c
+++ b/libobjc/selector.c
@@ -293,6 +293,9 @@ const char *sel_getName (SEL selector)
{
const char *ret;
+ if (selector == NULL)
+ return "<null selector>";
+
objc_mutex_lock (__objc_runtime_mutex);
if ((soffset_decode ((sidx)selector->sel_id) > 0)
&& (soffset_decode ((sidx)selector->sel_id) <= __objc_selector_max_index))
@@ -306,6 +309,9 @@ const char *sel_getName (SEL selector)
/* Traditional GNU Objective-C Runtime API. */
const char *sel_get_name (SEL selector)
{
+ if (selector == NULL)
+ return 0;
+
return sel_getName (selector);
}