diff options
Diffstat (limited to 'source/blender/blenkernel/intern/context.c')
-rw-r--r-- | source/blender/blenkernel/intern/context.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/source/blender/blenkernel/intern/context.c b/source/blender/blenkernel/intern/context.c index 2a44c942865..22646ab3cb5 100644 --- a/source/blender/blenkernel/intern/context.c +++ b/source/blender/blenkernel/intern/context.c @@ -520,11 +520,10 @@ static int ctx_data_get(bContext *C, const char *member, bContextDataResult *res C->data.recursion= 1; - for(entry=C->wm.store->entries.first; entry; entry=entry->next) { - if(strcmp(entry->name, member) == 0) { - result->ptr= entry->ptr; - done= 1; - } + entry= BLI_rfindstring(&C->wm.store->entries, member, offsetof(bContextStoreEntry, name)); + if(entry) { + result->ptr= entry->ptr; + done= 1; } } if(done!=1 && recursion < 2 && C->wm.region) { @@ -718,7 +717,7 @@ int CTX_data_equals(const char *member, const char *str) int CTX_data_dir(const char *member) { - return (strcmp(member, "") == 0); + return member[0] == '\0'; } void CTX_data_id_pointer_set(bContextDataResult *result, ID *id) |