Community
Participate
Working Groups
Found this in my error log. No idea how to reproduce, I guess coming from bug 551320 & related changes. SWT org.eclipse.swt.graphics.GC.drawImage(Image, int, int, int, int, int, int, int, int) complains about given arguments our of range: if (srcX < 0 || srcY < 0 || srcWidth < 0 || srcHeight < 0 || destWidth < 0 || destHeight < 0) So one of arguments in the line below (in LineNumberRulerColumn.doubleBufferPaint(GC)) was negative: bufferGC.drawImage(newBuffer, 0, bufferY, size.x, bufferH, 0, bufferY, size.x, bufferH); eclipse.buildId=4.14.0.I20191119-0510 java.version=1.8.0_232 java.vendor=Oracle Corporation BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US Command-line arguments: -os linux -ws gtk -arch x86_64 org.eclipse.ui Error Wed Nov 20 15:43:06 CET 2019 Unhandled event loop exception java.lang.IllegalArgumentException: Argument not valid at org.eclipse.swt.SWT.error(SWT.java:4701) at org.eclipse.swt.SWT.error(SWT.java:4635) at org.eclipse.swt.SWT.error(SWT.java:4606) at org.eclipse.swt.graphics.GC.drawImage(GC.java:838) at org.eclipse.jface.text.source.LineNumberRulerColumn.doubleBufferPaint(LineNumberRulerColumn.java:759) at org.eclipse.jface.text.source.LineNumberRulerColumn.lambda$2(LineNumberRulerColumn.java:619) at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:234) at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) at org.eclipse.swt.widgets.Display.sendEvent(Display.java:5676) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1423) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1449) at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1432) at org.eclipse.swt.widgets.Control.gtk_draw(Control.java:3925) at org.eclipse.swt.widgets.Scrollable.gtk_draw(Scrollable.java:342) at org.eclipse.swt.widgets.Composite.gtk_draw(Composite.java:455) at org.eclipse.swt.widgets.Canvas.gtk_draw(Canvas.java:181) at org.eclipse.swt.widgets.Widget.windowProc(Widget.java:2243) at org.eclipse.swt.widgets.Control.windowProc(Control.java:6826) at org.eclipse.swt.widgets.Display.windowProc(Display.java:5917) at org.eclipse.swt.internal.gtk.GTK._gtk_main_do_event(Native Method) at org.eclipse.swt.internal.gtk.GTK.gtk_main_do_event(GTK.java:4168) at org.eclipse.swt.widgets.Display.eventProc(Display.java:1480) at org.eclipse.swt.internal.gtk.OS._g_main_context_iteration(Native Method) at org.eclipse.swt.internal.gtk.OS.g_main_context_iteration(OS.java:1604) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:4427) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1160) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1049) at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:660) at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:559) at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:154) at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:150) at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:137) at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:107) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:401) at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:657) at org.eclipse.equinox.launcher.Main.basicRun(Main.java:594) at org.eclipse.equinox.launcher.Main.run(Main.java:1465) at org.eclipse.equinox.launcher.Main.main(Main.java:1438)
(In reply to Andrey Loskutov from comment #0) > So one of arguments in the line below (in > LineNumberRulerColumn.doubleBufferPaint(GC)) was negative: > > bufferGC.drawImage(newBuffer, 0, bufferY, size.x, bufferH, 0, bufferY, > size.x, bufferH); OK, this can only be bufferY or bufferH. May be we should set them to zero if they go negative?
New Gerrit change created: https://git.eclipse.org/r/153136
Gerrit change https://git.eclipse.org/r/153136 was merged to [master]. Commit: http://git.eclipse.org/c/platform/eclipse.platform.text.git/commit/?id=5e10cc37deefc6d92f881b25b74c8e0038b74bf1