$include_dir="/home/hyper-archives/boost-commit/include"; include("$include_dir/msg-header.inc") ?>
Subject: [Boost-commit] svn:boost r55712 - trunk/tools/build/v2/build
From: ghost_at_[hidden]
Date: 2009-08-22 04:21:09
Author: vladimir_prus
Date: 2009-08-22 04:21:07 EDT (Sat, 22 Aug 2009)
New Revision: 55712
URL: http://svn.boost.org/trac/boost/changeset/55712
Log:
Fix viable-source-types-for-generator-real looping thinko.
The loop over 'source-types' was meant to terminate if we ever get
'*'. However, it was for loop, and assinging empty list to
source-types had no effect. As result, the function would
sometimes return a list containing '*' and other types, which
other code did not expect and mishandled.
Text files modified: 
   trunk/tools/build/v2/build/generators.jam |     4 +++-                                    
   1 files changed, 3 insertions(+), 1 deletions(-)
Modified: trunk/tools/build/v2/build/generators.jam
==============================================================================
--- trunk/tools/build/v2/build/generators.jam	(original)
+++ trunk/tools/build/v2/build/generators.jam	2009-08-22 04:21:07 EDT (Sat, 22 Aug 2009)
@@ -952,8 +952,10 @@
     else
     {
         local result ;
-        for local s in $(source-types)
+        while $(source-types)
         {
+            local s = $(source-types[1]) ;
+            source-types = $(source-types[2-]) ;
             local viable-sources = [ generators.viable-source-types $(s) ] ;
             if $(viable-sources) = *
             {