@@ -522,6 +522,7 @@ Java_sun_awt_windows_WPageDialogPeer__1show(JNIEnv *env, jobject peer)
522
522
AwtComponent *awtParent = (parent != NULL ) ? (AwtComponent *)JNI_GET_PDATA (parent) : NULL ;
523
523
HWND hwndOwner = awtParent ? awtParent->GetHWnd () : NULL ;
524
524
525
+ jboolean doIt = JNI_FALSE;
525
526
PAGESETUPDLG setup;
526
527
memset (&setup, 0 , sizeof (setup));
527
528
@@ -577,7 +578,7 @@ Java_sun_awt_windows_WPageDialogPeer__1show(JNIEnv *env, jobject peer)
577
578
*/
578
579
if ((setup.hDevMode == NULL ) && (setup.hDevNames == NULL )) {
579
580
CLEANUP_SHOW;
580
- return JNI_FALSE ;
581
+ return doIt ;
581
582
}
582
583
} else {
583
584
int measure = PSD_INTHOUSANDTHSOFINCHES;
@@ -605,7 +606,7 @@ Java_sun_awt_windows_WPageDialogPeer__1show(JNIEnv *env, jobject peer)
605
606
pageFormatToSetup (env, self, page, &setup, AwtPrintControl::getPrintDC (env, self));
606
607
if (env->ExceptionCheck ()) {
607
608
CLEANUP_SHOW;
608
- return JNI_FALSE ;
609
+ return doIt ;
609
610
}
610
611
611
612
setup.lpfnPageSetupHook = reinterpret_cast <LPPAGESETUPHOOK>(pageDlgHook);
@@ -619,7 +620,7 @@ Java_sun_awt_windows_WPageDialogPeer__1show(JNIEnv *env, jobject peer)
619
620
jobject paper = getPaper (env, page);
620
621
if (paper == NULL ) {
621
622
CLEANUP_SHOW;
622
- return JNI_FALSE ;
623
+ return doIt ;
623
624
}
624
625
int units = setup.Flags & PSD_INTHOUSANDTHSOFINCHES ?
625
626
MM_HIENGLISH :
@@ -661,7 +662,7 @@ Java_sun_awt_windows_WPageDialogPeer__1show(JNIEnv *env, jobject peer)
661
662
setPaperValues (env, paper, &paperSize, &margins, units);
662
663
if (env->ExceptionCheck ()) {
663
664
CLEANUP_SHOW;
664
- return JNI_FALSE ;
665
+ return doIt ;
665
666
}
666
667
/*
667
668
* Put the updated Paper instance and the orientation into
@@ -670,7 +671,7 @@ Java_sun_awt_windows_WPageDialogPeer__1show(JNIEnv *env, jobject peer)
670
671
setPaper (env, page, paper);
671
672
if (env->ExceptionCheck ()) {
672
673
CLEANUP_SHOW;
673
- return JNI_FALSE ;
674
+ return doIt ;
674
675
}
675
676
setPageFormatOrientation (env, page, orientation);
676
677
if (env->ExceptionCheck ()) {
@@ -684,12 +685,13 @@ Java_sun_awt_windows_WPageDialogPeer__1show(JNIEnv *env, jobject peer)
684
685
jboolean err = setPrintPaperSize (env, self, devmode->dmPaperSize );
685
686
if (err) {
686
687
CLEANUP_SHOW;
687
- return JNI_FALSE ;
688
+ return doIt ;
688
689
}
689
690
}
690
691
}
691
692
::GlobalUnlock (setup.hDevMode);
692
693
}
694
+ doIt = JNI_TRUE;
693
695
}
694
696
695
697
AwtDialog::CheckUninstallModalHook ();
@@ -708,7 +710,7 @@ Java_sun_awt_windows_WPageDialogPeer__1show(JNIEnv *env, jobject peer)
708
710
709
711
CLEANUP_SHOW;
710
712
711
- return JNI_TRUE ;
713
+ return doIt ;
712
714
713
715
CATCH_BAD_ALLOC_RET (0 );
714
716
}
0 commit comments