From 37911ff92bb8fe4601b6e034f386ab6df2c91e13 Mon Sep 17 00:00:00 2001 From: Mat Booth Date: Dec 17 2017 14:42:32 +0000 Subject: Update to last RC/final release of Oxygen.2 Fix x11 crash when running on wayland --- diff --git a/eclipse.spec b/eclipse.spec index 0879eb8..ff73990 100644 --- a/eclipse.spec +++ b/eclipse.spec @@ -6,7 +6,7 @@ Epoch: 1 %global eb_commit 81122c55c72d9e308302c878f642f93c39507436 -%global eclipse_tag S4_7_2_RC3 +%global eclipse_tag S4_7_2_RC4 %global _jetty_version 9.4.6 %global _lucene_version 6.1.0 @@ -38,7 +38,7 @@ Epoch: 1 Summary: An open, extensible IDE Name: eclipse Version: 4.7.2 -Release: 0.2%{?dist} +Release: 1%{?dist} License: EPL URL: http://www.eclipse.org/ @@ -126,6 +126,9 @@ Patch29: fix_ant_build.patch # Hide the p2 Droplets from cluttering Install Wizard Combo Patch30: eclipse-hide-droplets-from-install-wizard.patch +# X11 crash when running on wayland +Patch31: fix-x11-crash-ebz527693.patch + # Use the jit on 32bit arm to speed up the build %ifarch %{arm} BuildRequires: java-1.8.0-openjdk-aarch32-devel @@ -412,6 +415,7 @@ tar --strip-components=1 -xf %{SOURCE1} %endif %patch29 %patch30 +%patch31 -p1 # Use ecj when bootstrapping %if %{bootstrap} @@ -637,11 +641,11 @@ sed -i -e '/org.objectweb.asm/s/;.*"//' \ eclipse.pde.ui/apitools/org.eclipse.pde.api.tools{,.generator,.tests}/META-INF/MANIFEST.MF # Use system osgi.annotation lib -ln -s %{_javadir}/osgi-annotation/osgi.annotation.jar rt.equinox.framework/bundles/org.eclipse.osgi/osgi/ -ln -s %{_javadir}/osgi-annotation/osgi.annotation.jar rt.equinox.framework/bundles/org.eclipse.osgi.services/lib/ -ln -s %{_javadir}/osgi-annotation/osgi.annotation.jar rt.equinox.framework/bundles/org.eclipse.osgi.util/lib/ -ln -s %{_javadir}/osgi-annotation/osgi.annotation.jar rt.equinox.bundles/bundles/org.eclipse.equinox.http.servlet/osgi/ -ln -s %{_javadir}/osgi-annotation/osgi.annotation.jar rt.equinox.bundles/bundles/org.eclipse.equinox.coordinator/lib/ +ln -s $(build-classpath osgi-annotation) rt.equinox.framework/bundles/org.eclipse.osgi/osgi/ +ln -s $(build-classpath osgi-annotation) rt.equinox.framework/bundles/org.eclipse.osgi.services/lib/ +ln -s $(build-classpath osgi-annotation) rt.equinox.framework/bundles/org.eclipse.osgi.util/lib/ +ln -s $(build-classpath osgi-annotation) rt.equinox.bundles/bundles/org.eclipse.equinox.http.servlet/osgi/ +ln -s $(build-classpath osgi-annotation) rt.equinox.bundles/bundles/org.eclipse.equinox.coordinator/lib/ # The order of these mvn_package calls is important %mvn_package "::pom::" __noinstall @@ -744,12 +748,6 @@ popd #eclipse %install %mvn_install -%if 0%{?rhel} -# Quote paths that contain spaces, necessary on rhel -sed -i -e 's|\(%{_prefix}.*\)|"\1"|' .mfiles* -sed -i -e '/^%%dir .$/d' .mfiles-tests -%endif - # Some directories we need install -d -m 755 $RPM_BUILD_ROOT%{_sysconfdir} install -d -m 755 $RPM_BUILD_ROOT%{_jnidir} @@ -1103,6 +1101,10 @@ fi %{_eclipsedir}/plugins/org.eclipse.osgi.util_* %changelog +* Wed Nov 29 2017 Mat Booth - 1:4.7.2-1 +- Update to last RC/final release of Oxygen.2 +- Fix x11 crash when running on wayland + * Fri Nov 24 2017 Mat Booth - 1:4.7.2-0.2 - Update to latest RC of Oxygen.2 diff --git a/fix-x11-crash-ebz527693.patch b/fix-x11-crash-ebz527693.patch new file mode 100644 index 0000000..3a796f3 --- /dev/null +++ b/fix-x11-crash-ebz527693.patch @@ -0,0 +1,53 @@ +From fa50d3f2eca0386f99312210ce0d759d45631ef4 Mon Sep 17 00:00:00 2001 +From: Alexander Kurtakov +Date: Mon, 27 Nov 2017 14:26:02 +0200 +Subject: Bug 527693 - [Wayland] TextTransfer crash (libX11.so) due to an x11 + call gdk_x11_display_utf8_to_compound_text + +Compound text is dead technology and fully obsoleted by UTF actually. Do +not claim support for it if not on X11. This should fix the crash. + +Change-Id: Id4df68bc3e2052eee88f22a3b06c94537cc6899a +Signed-off-by: Alexander Kurtakov +--- + .../gtk/org/eclipse/swt/dnd/TextTransfer.java | 12 +++++++++--- + 1 file changed, 9 insertions(+), 3 deletions(-) + +diff --git a/eclipse.platform.swtbundles/org.eclipse.swt/Eclipse SWT Drag and Drop/gtk/org/eclipse/swt/dnd/TextTransfer.java b/eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT Drag and Drop/gtk/org/eclipse/swt/dnd/TextTransfer.java +index 5da8f52..6148efb 100644 +--- a/eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT Drag and Drop/gtk/org/eclipse/swt/dnd/TextTransfer.java ++++ b/eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT Drag and Drop/gtk/org/eclipse/swt/dnd/TextTransfer.java +@@ -72,7 +72,7 @@ public void javaToNative (Object object, TransferData transferData) { + } + String string = (String)object; + byte[] utf8 = Converter.wcsToMbcs (string, true); +- if (transferData.type == COMPOUND_TEXT_ID) { ++ if (OS.isX11() && transferData.type == COMPOUND_TEXT_ID) { + long /*int*/[] encoding = new long /*int*/[1]; + int[] format = new int[1]; + long /*int*/[] ctext = new long /*int*/[1]; +@@ -136,12 +136,18 @@ public Object nativeToJava(TransferData transferData){ + + @Override + protected int[] getTypeIds() { +- return new int[] {UTF8_STRING_ID, COMPOUND_TEXT_ID, STRING_ID}; ++ if (OS.isX11()) { ++ return new int[] {UTF8_STRING_ID, COMPOUND_TEXT_ID, STRING_ID}; ++ } ++ return new int[] {UTF8_STRING_ID, STRING_ID}; + } + + @Override + protected String[] getTypeNames() { +- return new String[] {UTF8_STRING, COMPOUND_TEXT, STRING}; ++ if (OS.isX11()) { ++ return new String[] {UTF8_STRING, COMPOUND_TEXT, STRING}; ++ } ++ return new String[] {UTF8_STRING, STRING}; + } + + boolean checkText(Object object) { +-- +cgit v1.1 + + diff --git a/get-eclipse.sh b/get-eclipse.sh index a9b79a0..19e7357 100755 --- a/get-eclipse.sh +++ b/get-eclipse.sh @@ -1,7 +1,7 @@ #!/bin/bash set -e AGGREGATOR_PATH=git://git.eclipse.org/gitroot/platform/eclipse.platform.releng.aggregator.git -TAG=S4_7_2_RC3 +TAG=S4_7_2_RC4 rm -rf R4_platform-aggregator-$TAG rm -rf R4_platform-aggregator-$TAG.tar.xz diff --git a/sources b/sources index 7cf5604..501a3f6 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (org.eclipse.linuxtools.eclipse-build-81122c55c72d9e308302c878f642f93c39507436.tar.xz) = 170d6801fd2c2f5f95c4d79cb14e36bb5db63142a52cafea81656f63dd132cf1a5b52b945fa0f85d4eed21ed660d22f46d2cdf9cde86e08fed06b16e9a22ed51 -SHA512 (R4_platform-aggregator-S4_7_2_RC3.tar.xz) = e178348a335d86ff4863b0f61296bf75725e68ad05356c0ebe328f5ff5b952a6dda0bb5a36b3c0b7b5b2f58031c98e135036ee16d964100caf4e0dd158da113f +SHA512 (R4_platform-aggregator-S4_7_2_RC4.tar.xz) = 22cae9203cf157e4c780654d55bfffa0afa05f16125e0638fe57e4c013fd3bf7f24541842716b82bc9af95f235fa69fb00c7c8a2615ace43931d946d16866b1e