src/solaris/classes/sun/awt/X11/MotifDnDDropTargetProtocol.java
Print this page
*** 1,7 ****
/*
! * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation. Oracle designates this
--- 1,7 ----
/*
! * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation. Oracle designates this
*** 160,179 ****
unsafe.putShort(data + 8, (short)0); /* num_drop_sites */
unsafe.putShort(data + 10, (short)0); /* pad */
unsafe.putInt(data + 12, dataSize);
}
! XToolkit.WITH_XERROR_HANDLER(XErrorHandler.VerifyChangePropertyHandler.getInstance());
XlibWrapper.XChangeProperty(XToolkit.getDisplay(), embedder,
MotifDnDConstants.XA_MOTIF_DRAG_RECEIVER_INFO.getAtom(),
MotifDnDConstants.XA_MOTIF_DRAG_RECEIVER_INFO.getAtom(),
8, XConstants.PropModeReplace,
data, dataSize);
! XToolkit.RESTORE_XERROR_HANDLER();
! if (XToolkit.saved_error != null &&
! XToolkit.saved_error.get_error_code() != XConstants.Success) {
throw new XException("Cannot write Motif receiver info property");
}
} finally {
if (!overriden) {
unsafe.freeMemory(data);
--- 160,179 ----
unsafe.putShort(data + 8, (short)0); /* num_drop_sites */
unsafe.putShort(data + 10, (short)0); /* pad */
unsafe.putInt(data + 12, dataSize);
}
! XErrorHandlerUtil.WITH_XERROR_HANDLER(XErrorHandler.VerifyChangePropertyHandler.getInstance());
XlibWrapper.XChangeProperty(XToolkit.getDisplay(), embedder,
MotifDnDConstants.XA_MOTIF_DRAG_RECEIVER_INFO.getAtom(),
MotifDnDConstants.XA_MOTIF_DRAG_RECEIVER_INFO.getAtom(),
8, XConstants.PropModeReplace,
data, dataSize);
! XErrorHandlerUtil.RESTORE_XERROR_HANDLER();
! if ((XErrorHandlerUtil.saved_error != null) &&
! (XErrorHandlerUtil.saved_error.get_error_code() != XConstants.Success)) {
throw new XException("Cannot write Motif receiver info property");
}
} finally {
if (!overriden) {
unsafe.freeMemory(data);
*** 234,253 ****
tproxy = MotifDnDConstants.Swapper.swap(tproxy);
}
unsafe.putInt(data + 4, tproxy);
! XToolkit.WITH_XERROR_HANDLER(XErrorHandler.VerifyChangePropertyHandler.getInstance());
XlibWrapper.XChangeProperty(XToolkit.getDisplay(), embedder,
MotifDnDConstants.XA_MOTIF_DRAG_RECEIVER_INFO.getAtom(),
MotifDnDConstants.XA_MOTIF_DRAG_RECEIVER_INFO.getAtom(),
8, XConstants.PropModeReplace,
data, dataSize);
! XToolkit.RESTORE_XERROR_HANDLER();
! if (XToolkit.saved_error != null &&
! XToolkit.saved_error.get_error_code() != XConstants.Success) {
throw new XException("Cannot write Motif receiver info property");
}
}
} finally {
wpg.dispose();
--- 234,253 ----
tproxy = MotifDnDConstants.Swapper.swap(tproxy);
}
unsafe.putInt(data + 4, tproxy);
! XErrorHandlerUtil.WITH_XERROR_HANDLER(XErrorHandler.VerifyChangePropertyHandler.getInstance());
XlibWrapper.XChangeProperty(XToolkit.getDisplay(), embedder,
MotifDnDConstants.XA_MOTIF_DRAG_RECEIVER_INFO.getAtom(),
MotifDnDConstants.XA_MOTIF_DRAG_RECEIVER_INFO.getAtom(),
8, XConstants.PropModeReplace,
data, dataSize);
! XErrorHandlerUtil.RESTORE_XERROR_HANDLER();
! if ((XErrorHandlerUtil.saved_error != null) &&
! (XErrorHandlerUtil.saved_error.get_error_code() != XConstants.Success)) {
throw new XException("Cannot write Motif receiver info property");
}
}
} finally {
wpg.dispose();
*** 410,445 ****
* Select for StructureNotifyMask to receive DestroyNotify in case of source
* crash.
*/
XWindowAttributes wattr = new XWindowAttributes();
try {
! XToolkit.WITH_XERROR_HANDLER(XErrorHandler.IgnoreBadWindowHandler.getInstance());
int status = XlibWrapper.XGetWindowAttributes(XToolkit.getDisplay(),
source_win, wattr.pData);
! XToolkit.RESTORE_XERROR_HANDLER();
! if (status == 0 ||
! (XToolkit.saved_error != null &&
! XToolkit.saved_error.get_error_code() != XConstants.Success)) {
throw new XException("XGetWindowAttributes failed");
}
source_win_mask = wattr.get_your_event_mask();
} finally {
wattr.dispose();
}
! XToolkit.WITH_XERROR_HANDLER(XErrorHandler.IgnoreBadWindowHandler.getInstance());
XlibWrapper.XSelectInput(XToolkit.getDisplay(), source_win,
source_win_mask |
XConstants.StructureNotifyMask);
! XToolkit.RESTORE_XERROR_HANDLER();
! if (XToolkit.saved_error != null &&
! XToolkit.saved_error.get_error_code() != XConstants.Success) {
throw new XException("XSelectInput failed");
}
sourceWindow = source_win;
sourceWindowMask = source_win_mask;
--- 410,445 ----
* Select for StructureNotifyMask to receive DestroyNotify in case of source
* crash.
*/
XWindowAttributes wattr = new XWindowAttributes();
try {
! XErrorHandlerUtil.WITH_XERROR_HANDLER(XErrorHandler.IgnoreBadWindowHandler.getInstance());
int status = XlibWrapper.XGetWindowAttributes(XToolkit.getDisplay(),
source_win, wattr.pData);
! XErrorHandlerUtil.RESTORE_XERROR_HANDLER();
! if ((status == 0) ||
! ((XErrorHandlerUtil.saved_error != null) &&
! (XErrorHandlerUtil.saved_error.get_error_code() != XConstants.Success))) {
throw new XException("XGetWindowAttributes failed");
}
source_win_mask = wattr.get_your_event_mask();
} finally {
wattr.dispose();
}
! XErrorHandlerUtil.WITH_XERROR_HANDLER(XErrorHandler.IgnoreBadWindowHandler.getInstance());
XlibWrapper.XSelectInput(XToolkit.getDisplay(), source_win,
source_win_mask |
XConstants.StructureNotifyMask);
! XErrorHandlerUtil.RESTORE_XERROR_HANDLER();
! if ((XErrorHandlerUtil.saved_error != null) &&
! (XErrorHandlerUtil.saved_error.get_error_code() != XConstants.Success)) {
throw new XException("XSelectInput failed");
}
sourceWindow = source_win;
sourceWindowMask = source_win_mask;
*** 1022,1035 ****
}
if (sourceWindow != 0) {
XToolkit.awtLock();
try {
! XToolkit.WITH_XERROR_HANDLER(XErrorHandler.IgnoreBadWindowHandler.getInstance());
XlibWrapper.XSelectInput(XToolkit.getDisplay(), sourceWindow,
sourceWindowMask);
! XToolkit.RESTORE_XERROR_HANDLER();
} finally {
XToolkit.awtUnlock();
}
}
--- 1022,1035 ----
}
if (sourceWindow != 0) {
XToolkit.awtLock();
try {
! XErrorHandlerUtil.WITH_XERROR_HANDLER(XErrorHandler.IgnoreBadWindowHandler.getInstance());
XlibWrapper.XSelectInput(XToolkit.getDisplay(), sourceWindow,
sourceWindowMask);
! XErrorHandlerUtil.RESTORE_XERROR_HANDLER();
} finally {
XToolkit.awtUnlock();
}
}