@@ -534,6 +534,7 @@ Java_sun_awt_windows_WPageDialogPeer__1show(JNIEnv *env, jobject peer)
534534 AwtComponent *awtParent = (parent != NULL ) ? (AwtComponent *)JNI_GET_PDATA (parent) : NULL ;
535535 HWND hwndOwner = awtParent ? awtParent->GetHWnd () : NULL ;
536536
537+ jboolean doIt = JNI_FALSE;
537538 PAGESETUPDLG setup;
538539 memset (&setup, 0 , sizeof (setup));
539540
@@ -589,7 +590,7 @@ Java_sun_awt_windows_WPageDialogPeer__1show(JNIEnv *env, jobject peer)
589590 */
590591 if ((setup.hDevMode == NULL ) && (setup.hDevNames == NULL )) {
591592 CLEANUP_SHOW;
592- return JNI_FALSE ;
593+ return doIt ;
593594 }
594595 } else {
595596 int measure = PSD_INTHOUSANDTHSOFINCHES;
@@ -617,7 +618,7 @@ Java_sun_awt_windows_WPageDialogPeer__1show(JNIEnv *env, jobject peer)
617618 pageFormatToSetup (env, self, page, &setup, AwtPrintControl::getPrintDC (env, self));
618619 if (env->ExceptionCheck ()) {
619620 CLEANUP_SHOW;
620- return JNI_FALSE ;
621+ return doIt ;
621622 }
622623
623624 setup.lpfnPageSetupHook = reinterpret_cast <LPPAGESETUPHOOK>(pageDlgHook);
@@ -631,7 +632,7 @@ Java_sun_awt_windows_WPageDialogPeer__1show(JNIEnv *env, jobject peer)
631632 jobject paper = getPaper (env, page);
632633 if (paper == NULL ) {
633634 CLEANUP_SHOW;
634- return JNI_FALSE ;
635+ return doIt ;
635636 }
636637 int units = setup.Flags & PSD_INTHOUSANDTHSOFINCHES ?
637638 MM_HIENGLISH :
@@ -673,7 +674,7 @@ Java_sun_awt_windows_WPageDialogPeer__1show(JNIEnv *env, jobject peer)
673674 setPaperValues (env, paper, &paperSize, &margins, units);
674675 if (env->ExceptionCheck ()) {
675676 CLEANUP_SHOW;
676- return JNI_FALSE ;
677+ return doIt ;
677678 }
678679 /*
679680 * Put the updated Paper instance and the orientation into
@@ -682,7 +683,7 @@ Java_sun_awt_windows_WPageDialogPeer__1show(JNIEnv *env, jobject peer)
682683 setPaper (env, page, paper);
683684 if (env->ExceptionCheck ()) {
684685 CLEANUP_SHOW;
685- return JNI_FALSE ;
686+ return doIt ;
686687 }
687688 setPageFormatOrientation (env, page, orientation);
688689 if (env->ExceptionCheck ()) {
@@ -696,12 +697,13 @@ Java_sun_awt_windows_WPageDialogPeer__1show(JNIEnv *env, jobject peer)
696697 jboolean err = setPrintPaperSize (env, self, devmode->dmPaperSize );
697698 if (err) {
698699 CLEANUP_SHOW;
699- return JNI_FALSE ;
700+ return doIt ;
700701 }
701702 }
702703 }
703704 ::GlobalUnlock (setup.hDevMode);
704705 }
706+ doIt = JNI_TRUE;
705707 }
706708
707709 AwtDialog::CheckUninstallModalHook ();
@@ -720,7 +722,7 @@ Java_sun_awt_windows_WPageDialogPeer__1show(JNIEnv *env, jobject peer)
720722
721723 CLEANUP_SHOW;
722724
723- return JNI_TRUE ;
725+ return doIt ;
724726
725727 CATCH_BAD_ALLOC_RET (0 );
726728}
0 commit comments