MSI: remove more types from the parser (RESEND)
Mike McCormack
mike at codeweavers.com
Mon May 30 05:38:25 CDT 2005
ChangeLog:
* remove more types from the parser
-------------- next part --------------
Index: dlls/msi/insert.c
===================================================================
RCS file: /home/wine/wine/dlls/msi/insert.c,v
retrieving revision 1.12
diff -u -p -r1.12 insert.c
--- dlls/msi/insert.c 29 May 2005 20:17:16 -0000 1.12
+++ dlls/msi/insert.c 30 May 2005 10:35:16 -0000
@@ -44,7 +44,7 @@ typedef struct tagMSIINSERTVIEW
MSIDATABASE *db;
BOOL bIsTemp;
MSIVIEW *sv;
- value_list *vals;
+ column_info *vals;
} MSIINSERTVIEW;
static UINT INSERT_fetch_int( struct tagMSIVIEW *view, UINT row, UINT col, UINT *val )
@@ -62,7 +62,7 @@ static UINT INSERT_fetch_int( struct tag
* Merge a value_list and a record to create a second record.
* Replace wildcard entries in the valuelist with values from the record
*/
-static MSIRECORD *INSERT_merge_record( UINT fields, value_list *vl, MSIRECORD *rec )
+static MSIRECORD *INSERT_merge_record( UINT fields, column_info *vl, MSIRECORD *rec )
{
MSIRECORD *merged;
DWORD wildcard_count = 1, i;
@@ -255,7 +255,7 @@ MSIVIEWOPS insert_ops =
};
UINT INSERT_CreateView( MSIDATABASE *db, MSIVIEW **view, LPWSTR table,
- column_info *columns, value_list *values, BOOL temp )
+ column_info *columns, column_info *values, BOOL temp )
{
MSIINSERTVIEW *iv = NULL;
UINT r;
Index: dlls/msi/query.h
===================================================================
RCS file: /home/wine/wine/dlls/msi/query.h,v
retrieving revision 1.17
diff -u -p -r1.17 query.h
--- dlls/msi/query.h 29 May 2005 20:17:16 -0000 1.17
+++ dlls/msi/query.h 30 May 2005 10:35:17 -0000
@@ -115,7 +115,7 @@ UINT CREATE_CreateView( MSIDATABASE *db,
column_info *col_info, BOOL temp );
UINT INSERT_CreateView( MSIDATABASE *db, MSIVIEW **view, LPWSTR table,
- column_info *columns, value_list *values, BOOL temp );
+ column_info *columns, column_info *values, BOOL temp );
UINT UPDATE_CreateView( MSIDATABASE *db, MSIVIEW **, LPWSTR table,
column_info *list, struct expr *expr );
Index: dlls/msi/sql.y
===================================================================
RCS file: /home/wine/wine/dlls/msi/sql.y,v
retrieving revision 1.29
diff -u -p -r1.29 sql.y
--- dlls/msi/sql.y 29 May 2005 20:17:16 -0000 1.29
+++ dlls/msi/sql.y 30 May 2005 10:35:17 -0000
@@ -74,7 +74,6 @@ static struct expr * EXPR_wildcard( void
struct sql_str str;
LPWSTR string;
column_info *column_list;
- value_list *val_list;
MSIVIEW *query;
struct expr *expr;
USHORT column_type;
@@ -126,12 +125,11 @@ static struct expr * EXPR_wildcard( void
%type <string> table id
%type <column_list> selcollist column column_and_type column_def table_def
-%type <column_list> column_assignment update_assign_list
+%type <column_list> column_assignment update_assign_list constlist
%type <query> query from fromtable selectfrom unorderedsel
%type <query> oneupdate onedelete oneselect onequery onecreate oneinsert
%type <expr> expr val column_val const_val
%type <column_type> column_type data_type data_type_l data_count
-%type <val_list> constlist
%%
@@ -498,25 +496,18 @@ val:
constlist:
const_val
{
- value_list *vals;
-
- vals = parser_alloc( info, sizeof *vals );
- if( !vals )
+ $$ = parser_alloc_column( info, NULL, NULL );
+ if( !$$ )
YYABORT;
- vals->val = $1;
- vals->next = NULL;
- $$ = vals;
+ $$->val = $1;
}
| const_val TK_COMMA constlist
{
- value_list *vals;
-
- vals = parser_alloc( info, sizeof *vals );
- if( !vals )
+ $$ = parser_alloc_column( info, NULL, NULL );
+ if( !$$ )
YYABORT;
- vals->val = $1;
- vals->next = $3;
- $$ = vals;
+ $$->val = $1;
+ $$->next = $3;
}
;
More information about the wine-patches
mailing list