commit:     61532b5a6b52ba7371f45109769718164ce4a4fc
Author:     Sven Eden <seden <AT> havi <DOT> de>
AuthorDate: Thu Feb 12 15:47:01 2015 +0000
Commit:     Sven Eden <sven.eden <AT> gmx <DOT> de>
CommitDate: Thu Feb 12 15:47:01 2015 +0000
URL:        
http://sources.gentoo.org/gitweb/?p=proj/ufed.git;a=commit;h=61532b5a

Fix truncation of -* if set in make.conf.

---
 Portage.pm | 14 ++++++++------
 1 file changed, 8 insertions(+), 6 deletions(-)

diff --git a/Portage.pm b/Portage.pm
index d90be5e..a86e5bb 100644
--- a/Portage.pm
+++ b/Portage.pm
@@ -431,19 +431,19 @@ sub _determine_profiles
 # No parameters accepted
 sub _final_cleaning
 {
-       # The "disable all" flag is truncated to '*' by the parsing, but it
-       # has to read '-*'.
+       # The "disable all" flag is truncated to '*' by the parsing, but
+       # it has to read '-*'.
        _add_temp("-*", "global");
 
        $_use_temp->{'-*'}{global}{descr} = "{Never enable any flags other than 
those specified in make.conf}";
        $_use_temp->{'-*'}{global}{conf} = 0; ## Can never be -1
-       
+
        # Set it from the truncated config:
        if (defined($_use_temp->{'*'}{global})) {
-               $_use_temp->{'*'}{global}{conf} > 0
+               $_use_temp->{'*'}{global}{conf} > -1
                        and $_use_temp->{'-*'}{global}{conf} = 1;
        }
-       
+
        # The following use flags are dangerous or internal only
        # and must no be available using ufed:
        defined($_use_temp->{"*"})         and delete($_use_temp->{"*"});
@@ -863,7 +863,9 @@ sub _read_make_conf {
 
                $oldEnv{USE}{$flag}
                        and $_use_temp->{$flag}{global}{conf} = 1
-                       or  $_use_temp->{$flag}{global}{conf} = -1;
+                        or $flag eq '*'
+                       and $_use_temp->{$flag}{global}{conf} = 1
+                        or $_use_temp->{$flag}{global}{conf} = -1;
        }
        
        # Add PORTDIR and overlays to @_profiles

Reply via email to