Update to last RC/final release of Oxygen.2

Fix x11 crash when running on wayland
This commit is contained in:
Mat Booth 2017-12-17 14:42:32 +00:00
parent a737630474
commit 37911ff92b
4 changed files with 70 additions and 15 deletions

View File

@ -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 <mat.booth@redhat.com> - 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 <mat.booth@redhat.com> - 1:4.7.2-0.2
- Update to latest RC of Oxygen.2

View File

@ -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 <akurtako@redhat.com>
---
.../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

View File

@ -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

View File

@ -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