Home | Info | Community | Development | myReactOS | Contact Us
Definition at line 67 of file insert.c.
Referenced by INSERT_execute(), and UPDATE_execute().
{ MSIRECORD *merged; DWORD wildcard_count = 1, i; merged = MSI_CreateRecord( fields ); for( i=1; i <= fields; i++ ) { if( !vl ) { TRACE("Not enough elements in the list to insert\n"); goto err; } switch( vl->val->type ) { case EXPR_SVAL: TRACE("field %d -> %s\n", i, debugstr_w(vl->val->u.sval)); MSI_RecordSetStringW( merged, i, vl->val->u.sval ); break; case EXPR_IVAL: MSI_RecordSetInteger( merged, i, vl->val->u.ival ); break; case EXPR_WILDCARD: if( !rec ) goto err; MSI_RecordCopyField( rec, wildcard_count, merged, i ); wildcard_count++; break; default: ERR("Unknown expression type %d\n", vl->val->type); } vl = vl->next; } return merged; err: msiobj_release( &merged->hdr ); return NULL; }