[Rpm-maint] [rpm-software-management/rpm] implement %elif (#613)

Panu Matilainen notifications at github.com
Wed Jan 9 13:53:30 UTC 2019


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
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rpm.org/pipermail/rpm-maint/attachments/20190109/416d758e/attachment.html>


More information about the Rpm-maint mailing list