diff --git a/native/runner/runnerw/runnerw.cpp b/native/runner/runnerw/runnerw.cpp index b0b18ac8f8ba..3a273fc5fc53 100644 --- a/native/runner/runnerw/runnerw.cpp +++ b/native/runner/runnerw/runnerw.cpp @@ -74,14 +74,14 @@ BOOL Scan(char buf[], int count) { BOOL CtrlHandler(DWORD fdwCtrlType) { switch (fdwCtrlType) { case CTRL_C_EVENT: - return FALSE; + return TRUE; case CTRL_CLOSE_EVENT: case CTRL_LOGOFF_EVENT: case CTRL_SHUTDOWN_EVENT: CtrlBreak(); return (TRUE); case CTRL_BREAK_EVENT: - return FALSE; + return TRUE; default: return FALSE; } @@ -195,7 +195,9 @@ int main(int argc, char * argv[]) { char* c_args = new char[args.size() + 1]; strcpy(c_args, args.c_str()); - SetConsoleCtrlHandler((PHANDLER_ROUTINE) CtrlHandler, TRUE); + if (!SetConsoleCtrlHandler((PHANDLER_ROUTINE) CtrlHandler, TRUE)) { + ErrorMessage("SetConsoleCtrlHandler"); + } if (!CreateProcess(c_app, // Application name c_args, // Application arguments diff --git a/platform/platform-impl/src/com/intellij/openapi/editor/impl/EditorGutterComponentImpl.java b/platform/platform-impl/src/com/intellij/openapi/editor/impl/EditorGutterComponentImpl.java index 745d40f1c56e..46e7a79edf0b 100644 --- a/platform/platform-impl/src/com/intellij/openapi/editor/impl/EditorGutterComponentImpl.java +++ b/platform/platform-impl/src/com/intellij/openapi/editor/impl/EditorGutterComponentImpl.java @@ -1426,14 +1426,20 @@ class EditorGutterComponentImpl extends EditorGutterComponentEx implements Mouse @Override @Nullable - public Point getPoint(GutterIconRenderer renderer) { + public Point getPoint(final GutterIconRenderer renderer) { + final Ref result = Ref.create(); for (int line : myLineToGutterRenderers.keys()) { - for (GutterMark gutterIconRenderer : myLineToGutterRenderers.get(line)) { - if (gutterIconRenderer.equals(renderer)) { - int x = getLineMarkerAreaOffset() + 1; - final int y = myEditor.logicalPositionToXY(new LogicalPosition(line, 0)).y; - return new Point(x, y); + processIconsRow(line, myLineToGutterRenderers.get(line), new LineGutterIconRendererProcessor() { + @Override + public void process(int x, int y, GutterMark r) { + if (result.isNull() && r.equals(renderer)) { + result.set(new Point(x, y)); + } } + }); + + if (!result.isNull()) { + return result.get(); } } return null; diff --git a/platform/vcs-log/impl/src/com/intellij/vcs/log/impl/VcsLogManager.java b/platform/vcs-log/impl/src/com/intellij/vcs/log/impl/VcsLogManager.java index 46c4258030a8..e06fc4e60ac0 100644 --- a/platform/vcs-log/impl/src/com/intellij/vcs/log/impl/VcsLogManager.java +++ b/platform/vcs-log/impl/src/com/intellij/vcs/log/impl/VcsLogManager.java @@ -52,8 +52,8 @@ public class VcsLogManager implements Disposable { @NotNull private final VcsLogUiProperties myUiProperties; private PostponeableLogRefresher myLogRefresher; - private VcsLogDataHolder myLogDataHolder; - private VcsLogUI myUi; + private volatile VcsLogDataHolder myLogDataHolder; + private volatile VcsLogUI myUi; public VcsLogManager(@NotNull Project project, @NotNull ProjectLevelVcsManager vcsManager, @NotNull VcsLogSettings settings, diff --git a/platform/xdebugger-impl/src/com/intellij/xdebugger/impl/actions/EditBreakpointActionHandler.java b/platform/xdebugger-impl/src/com/intellij/xdebugger/impl/actions/EditBreakpointActionHandler.java index 1e30a9c54d6f..dac828ecb22f 100644 --- a/platform/xdebugger-impl/src/com/intellij/xdebugger/impl/actions/EditBreakpointActionHandler.java +++ b/platform/xdebugger-impl/src/com/intellij/xdebugger/impl/actions/EditBreakpointActionHandler.java @@ -57,7 +57,7 @@ public abstract class EditBreakpointActionHandler extends DebuggerActionHandler Point point = gutterComponent.getPoint(breakpointGutterRenderer); if (point == null) return; final Icon icon = breakpointGutterRenderer.getIcon(); - Point whereToShow = new Point(point.x + icon.getIconWidth() / 2 + gutterComponent.getIconsAreaWidth(), point.y + icon.getIconHeight() / 2); + Point whereToShow = new Point(point.x + icon.getIconWidth() / 2, point.y + icon.getIconHeight() / 2); doShowPopup(project, gutterComponent, whereToShow, breakpoint); } diff --git a/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/RngReferenceConverter.java b/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/RngReferenceConverter.java index 56d85ced4e10..02a4af18bd19 100644 --- a/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/RngReferenceConverter.java +++ b/xml/relaxng/src/org/intellij/plugins/relaxNG/xml/dom/impl/RngReferenceConverter.java @@ -17,7 +17,6 @@ package org.intellij.plugins.relaxNG.xml.dom.impl; import com.intellij.openapi.util.Ref; -import com.intellij.openapi.util.TextRange; import com.intellij.psi.PsiElement; import com.intellij.psi.PsiReference; import com.intellij.psi.PsiReferenceBase; @@ -53,7 +52,7 @@ public class RngReferenceConverter implements CustomReferenceConverter { } return new PsiReference[]{ - new PsiReferenceBase(value, value.getValueTextRange(), true) { + new PsiReferenceBase(value, true) { public PsiElement resolve() { // final XmlTag tag = PsiTreeUtil.getParentOfType(value, XmlTag.class); // final XmlTag include = getAncestorTag(tag, "include", ProjectLoader.RNG_NAMESPACE);