[geany/geany] f38068: Skip typedef resolution in namespace search if not needed

Jiří Techet git-noreply at xxxxx
Thu Feb 11 14:36:01 UTC 2016


Branch:      refs/heads/master
Author:      Jiří Techet <techet at gmail.com>
Committer:   Jiří Techet <techet at gmail.com>
Date:        Mon, 18 Jan 2016 21:56:10 UTC
Commit:      f38068f04e9514269161a884df278b0af3e5c2c3
             https://github.com/geany/geany/commit/f38068f04e9514269161a884df278b0af3e5c2c3

Log Message:
-----------
Skip typedef resolution in namespace search if not needed

When we already have a struct-like type in namespace search,
we don't need any extra resolution - we already have the
right type. Skip the whole typedef resolution in this case.


Modified Paths:
--------------
    tagmanager/src/tm_workspace.c

Modified: tagmanager/src/tm_workspace.c
8 lines changed, 7 insertions(+), 1 deletions(-)
===================================================================
@@ -980,7 +980,13 @@ find_scope_members_all(const GPtrArray *tags, const GPtrArray *searched_array, l
 		TMTagType types = TM_TYPE_WITH_MEMBERS | tm_tag_typedef_t;
 
 		if (tag->type & types)  /* type: namespace search */
-			member_tags = find_scope_members(searched_array, tag->name, tag->file, lang, TRUE);
+		{
+			if (tag->type & tm_tag_typedef_t)
+				member_tags = find_scope_members(searched_array, tag->name, tag->file, lang, TRUE);
+			else
+				member_tags = find_scope_members_tags(tag->file ? tag->file->tags_array : searched_array,
+					tag, TRUE);
+		}
 		else if (tag->var_type)  /* variable: scope search */
 		{
 			/* The question now is whether we should use member tags (such as



--------------
This E-Mail was brought to you by github_commit_mail.py (Source: https://github.com/geany/infrastructure).


More information about the Commits mailing list