From: Piotr Caban piotr@codeweavers.com
--- dlls/wineps.drv/printproc.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-)
diff --git a/dlls/wineps.drv/printproc.c b/dlls/wineps.drv/printproc.c index 8ea2aa09015..62d0dc7c300 100644 --- a/dlls/wineps.drv/printproc.c +++ b/dlls/wineps.drv/printproc.c @@ -133,7 +133,16 @@ static struct pp_data* get_handle_data(HANDLE pp) static int WINAPI hmf_proc(HDC hdc, HANDLETABLE *htable, const ENHMETARECORD *rec, int n, LPARAM arg) { - FIXME("unsupported record: %ld\n", rec->iType); + struct pp_data *data = (struct pp_data *)arg; + + switch (rec->iType) + { + case EMR_HEADER: + return PSDRV_StartPage(&data->pdev->dev); + default: + FIXME("unsupported record: %ld\n", rec->iType); + } + return 1; }
@@ -174,7 +183,7 @@ static BOOL print_metafile(struct pp_data *data, HANDLE hdata) if (!hmf) return FALSE;
- ret = EnumEnhMetaFile(NULL, hmf, hmf_proc, NULL, NULL); + ret = EnumEnhMetaFile(NULL, hmf, hmf_proc, (void *)data, NULL); DeleteEnhMetaFile(hmf); return ret; }