James Hawkins : msi: Add an internal MSI_ViewModify.
Alexandre Julliard
julliard at wine.codeweavers.com
Mon Apr 23 14:26:14 CDT 2007
Module: wine
Branch: master
Commit: 2b4bf44b793fa1dcf102289b2c789a3284669f07
URL: http://source.winehq.org/git/wine.git/?a=commit;h=2b4bf44b793fa1dcf102289b2c789a3284669f07
Author: James Hawkins <truiken at gmail.com>
Date: Sat Apr 21 06:55:24 2007 -0500
msi: Add an internal MSI_ViewModify.
---
dlls/msi/msipriv.h | 1 +
dlls/msi/msiquery.c | 31 +++++++++++++++----------------
2 files changed, 16 insertions(+), 16 deletions(-)
diff --git a/dlls/msi/msipriv.h b/dlls/msi/msipriv.h
index 9a0918a..2a9217c 100644
--- a/dlls/msi/msipriv.h
+++ b/dlls/msi/msipriv.h
@@ -619,6 +619,7 @@ extern UINT MSI_ViewExecute( MSIQUERY*, MSIRECORD * );
extern UINT MSI_ViewFetch( MSIQUERY*, MSIRECORD ** );
extern UINT MSI_ViewClose( MSIQUERY* );
extern UINT MSI_ViewGetColumnInfo(MSIQUERY *, MSICOLINFO, MSIRECORD **);
+extern UINT MSI_ViewModify( MSIQUERY *, MSIMODIFY, MSIRECORD * );
extern UINT VIEW_find_column( MSIVIEW *, LPCWSTR, UINT * );
diff --git a/dlls/msi/msiquery.c b/dlls/msi/msiquery.c
index f91a123..abec8d8 100644
--- a/dlls/msi/msiquery.c
+++ b/dlls/msi/msiquery.c
@@ -552,10 +552,23 @@ UINT WINAPI MsiViewGetColumnInfo(MSIHANDLE hView, MSICOLINFO info, MSIHANDLE *hR
return r;
}
+UINT MSI_ViewModify( MSIQUERY *query, MSIMODIFY mode, MSIRECORD *rec )
+{
+ MSIVIEW *view = NULL;
+
+ if ( !query || !rec )
+ return ERROR_INVALID_HANDLE;
+
+ view = query->view;
+ if ( !view || !view->ops->modify)
+ return ERROR_FUNCTION_FAILED;
+
+ return view->ops->modify( view, mode, rec );
+}
+
UINT WINAPI MsiViewModify( MSIHANDLE hView, MSIMODIFY eModifyMode,
MSIHANDLE hRecord)
{
- MSIVIEW *view = NULL;
MSIQUERY *query = NULL;
MSIRECORD *rec = NULL;
UINT r = ERROR_FUNCTION_FAILED;
@@ -566,23 +579,9 @@ UINT WINAPI MsiViewModify( MSIHANDLE hView, MSIMODIFY eModifyMode,
if( !query )
return ERROR_INVALID_HANDLE;
- view = query->view;
- if( !view )
- goto out;
-
- if( !view->ops->modify )
- goto out;
-
rec = msihandle2msiinfo( hRecord, MSIHANDLETYPE_RECORD );
- if( !rec )
- {
- r = ERROR_INVALID_HANDLE;
- goto out;
- }
+ r = MSI_ViewModify( query, eModifyMode, rec );
- r = view->ops->modify( view, eModifyMode, rec );
-
-out:
msiobj_release( &query->hdr );
if( rec )
msiobj_release( &rec->hdr );
More information about the wine-cvs
mailing list