From dd31a1eac4dbbac2e7a14099a26189fc54cb5029 Mon Sep 17 00:00:00 2001 From: Rob Shearman Date: Wed, 12 Mar 2008 15:12:01 +0000 Subject: [PATCH] msi: Fix typos which caused joins of three or more tables to not work properly. In JOIN_fetch_int and JOIN_fetch_stream, prev_rows should be multiplied by the rows encountered in the current table so that prev_rows contains all of counts of the rows encountered multiplied together, rather than just the count of the rows in the last table encountered. --- dlls/msi/join.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dlls/msi/join.c b/dlls/msi/join.c index 7d25217d6c9..e24eace4352 100644 --- a/dlls/msi/join.c +++ b/dlls/msi/join.c @@ -77,7 +77,7 @@ static UINT JOIN_fetch_int( struct tagMSIVIEW *view, UINT row, UINT col, UINT *v break; } - prev_rows = table->rows; + prev_rows *= table->rows; cols += table->columns; } @@ -108,7 +108,7 @@ static UINT JOIN_fetch_stream( struct tagMSIVIEW *view, UINT row, UINT col, IStr break; } - prev_rows = table->rows; + prev_rows *= table->rows; cols += table->columns; }