pmatilai commented on this pull request.


>       spec->readStack = rl;
        spec->line[0] = '\0';
+    } else if (isElif) {
+       spec->readStack->reading = match && spec->readStack->readable;
+       if (spec->readStack->reading)
+           spec->readStack->readable = 0;
+       spec->line[0] = '\0';
+       match = -1;

Sorry but this all still seems like something duct-taped to the side to me. 
Like I said earlier in private: now that you know what's involved, please 
rethink the approach from scratch - what you really need tracked and where, and 
how to best achieve these things in a clear and concise manner. One can almost 
always do a better job the second time around.

There would seem to be a fair amount of overlap in these various tracking 
variables, some local, some wider, that could be eliminated / combined. For 
example, isn't elifEnabled practically the same thing as checking whether 
->next non-NULL? Also makes me wonder if it'd fit in more naturally if you just 
treated %elif as a new %if inside an %else, which is what it ultimately is. 
%elif is just syntactic sugar afterall.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/rpm-software-management/rpm/pull/613#pullrequestreview-190734941
_______________________________________________
Rpm-maint mailing list
Rpm-maint@lists.rpm.org
http://lists.rpm.org/mailman/listinfo/rpm-maint

Reply via email to