Rob Shearman : msi: Fix typos which caused joins of three or more tables to not work properly.
Module: wine Branch: master Commit: dd31a1eac4dbbac2e7a14099a26189fc54cb5029 URL: http://source.winehq.org/git/wine.git/?a=commit;h=dd31a1eac4dbbac2e7a14099a2... Author: Rob Shearman <rob(a)codeweavers.com> Date: Wed Mar 12 15:12:01 2008 +0000 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 files changed, 2 insertions(+), 2 deletions(-) diff --git a/dlls/msi/join.c b/dlls/msi/join.c index 7d25217..e24eace 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; }
participants (1)
-
Alexandre Julliard