diff --git a/bundles/org.eclipse.e4.ui.progress/src/org/eclipse/e4/ui/progress/internal/ProgressMonitorJobsDialog.java b/bundles/org.eclipse.e4.ui.progress/src/org/eclipse/e4/ui/progress/internal/ProgressMonitorJobsDialog.java
index a6f701f..0f6bdf3 100644
--- a/bundles/org.eclipse.e4.ui.progress/src/org/eclipse/e4/ui/progress/internal/ProgressMonitorJobsDialog.java
+++ b/bundles/org.eclipse.e4.ui.progress/src/org/eclipse/e4/ui/progress/internal/ProgressMonitorJobsDialog.java
@@ -219,7 +219,9 @@
 		composite.setFont(parent.getFont());
 		// Add the buttons to the button bar.
 		if (arrowCursor == null) {
-			arrowCursor = new Cursor(parent.getDisplay(), SWT.CURSOR_ARROW);
+			Cursor cursor = new Cursor(parent.getDisplay(), SWT.CURSOR_ARROW);
+			arrowCursor = cursor;
+			composite.addDisposeListener(e -> cursor.dispose());
 		}
 		createButtonsForButtonBar(composite);
 		return composite;
diff --git a/bundles/org.eclipse.jface/src/org/eclipse/jface/dialogs/ProgressMonitorDialog.java b/bundles/org.eclipse.jface/src/org/eclipse/jface/dialogs/ProgressMonitorDialog.java
index f81abbd..f9c8d82 100644
--- a/bundles/org.eclipse.jface/src/org/eclipse/jface/dialogs/ProgressMonitorDialog.java
+++ b/bundles/org.eclipse.jface/src/org/eclipse/jface/dialogs/ProgressMonitorDialog.java
@@ -395,7 +395,9 @@
 		cancel = createButton(parent, IDialogConstants.CANCEL_ID,
 				IDialogConstants.CANCEL_LABEL, true);
 		if (arrowCursor == null) {
-			arrowCursor = new Cursor(cancel.getDisplay(), SWT.CURSOR_ARROW);
+			Cursor cursor = new Cursor(cancel.getDisplay(), SWT.CURSOR_ARROW);
+			arrowCursor = cursor;
+			cancel.addDisposeListener(e -> cursor.dispose());
 		}
 		cancel.setCursor(arrowCursor);
 		setOperationCancelButtonEnabled(enableCancelButton);
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressMonitorJobsDialog.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressMonitorJobsDialog.java
index d843e8b..34d0fc5 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressMonitorJobsDialog.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressMonitorJobsDialog.java
@@ -192,7 +192,9 @@
 		composite.setFont(parent.getFont());
 		// Add the buttons to the button bar.
 		if (arrowCursor == null) {
-			arrowCursor = new Cursor(parent.getDisplay(), SWT.CURSOR_ARROW);
+			Cursor cursor = new Cursor(parent.getDisplay(), SWT.CURSOR_ARROW);
+			arrowCursor = cursor;
+			composite.addDisposeListener(e -> cursor.dispose());
 		}
 		createButtonsForButtonBar(composite);
 		return composite;
