Make test framework correctly delete symlinks so that test suites may complete

when e.g. pydev is installed rhbz#1290685
- Backport patch to fix a webkit crash ebz#487712
This commit is contained in:
Mat Booth 2016-02-17 01:16:33 +00:00
parent dc64e86b25
commit 5a2ea49eea
3 changed files with 119 additions and 4 deletions

62
eclipse-bug-487712.patch Normal file
View File

@ -0,0 +1,62 @@
From d0a9c478604ba6a32016a631c6d0b05ac839dffe Mon Sep 17 00:00:00 2001
From: Alexander Kurtakov
Date: Fri, 12 Feb 2016 11:57:13 +0200
Subject: Bug 487712 - Snippet128 crashes on Fedora
Bug in ProgressBar due to calling gdk_window_process_updates which sends
expose events for redrawing purposes. But this event is implementation
detail in GTK3 and shouldn't be used from outside and playing with it
leads to race conditions with webkitgtk.
Also GtkProgressBar redraws properly now so trying to force redraw is
useless on GTK 3.
Change-Id: I22373b9e33c83759e0ff9dc2d0600fe39cacb91e
Signed-off-by: Alexander Kurtakov <akurtako@redhat.com>
---
.../gtk/org/eclipse/swt/widgets/ProgressBar.java | 24 ++++++++++++----------
1 file changed, 13 insertions(+), 11 deletions(-)
diff --git a/eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/ProgressBar.java b/eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/ProgressBar.java
index d6749ef..cbdd8c7 100644
--- a/eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/ProgressBar.java
+++ b/eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/ProgressBar.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2000, 2013 IBM Corporation and others.
+ * Copyright (c) 2000, 2016 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -301,16 +301,18 @@ void updateBar (int selection, int minimum, int maximum) {
double fraction = minimum == maximum ? 1 : (double)(selection - minimum) / (maximum - minimum);
OS.gtk_progress_bar_set_fraction (handle, fraction);
- /*
- * Feature in GTK. The progress bar does
- * not redraw right away when a value is
- * changed. This is not strictly incorrect
- * but unexpected. The fix is to force all
- * outstanding redraws to be delivered.
- */
- long /*int*/ window = paintWindow ();
- OS.gdk_window_process_updates (window, false);
- OS.gdk_flush ();
+ if (!OS.GTK3) {
+ /*
+ * Feature in GTK. The progress bar does
+ * not redraw right away when a value is
+ * changed. This is not strictly incorrect
+ * but unexpected. The fix is to force all
+ * outstanding redraws to be delivered.
+ */
+ long /*int*/ window = paintWindow ();
+ OS.gdk_window_process_updates (window, false);
+ OS.gdk_flush ();
+ }
}
void gtk_orientable_set_orientation (long /*int*/ pbar, int orientation) {
--
cgit v0.11.2-4-g4a35

View File

@ -319,3 +319,49 @@
-else
- $vmcmd -Dosgi.os=$os -Dosgi.ws=$ws -Dosgi.arch=$arch -jar $launcher -data workspace -application org.eclipse.ant.core.antRunner -file ${PWD}/test.xml $tests -Dws=$ws -Dos=$os -Darch=$arch -D$installmode=true $properties -logger org.apache.tools.ant.DefaultLogger
-fi
--- eclipse.platform.releng.tychoeclipsebuilder/eclipse-junit-tests/src/main/scripts/test.xml.orig 2016-02-17 00:50:39.910394827 +0000
+++ eclipse.platform.releng.tychoeclipsebuilder/eclipse-junit-tests/src/main/scripts/test.xml 2016-02-17 00:54:04.625884958 +0000
@@ -169,7 +169,9 @@
<target
name="setup-zip"
description="Reinstall the test Eclipse installation if specified by user">
- <delete dir="${install}" />
+ <delete removeNotFollowedSymlinks="true" failonerror="false">
+ <fileset dir="${install}" followsymlinks="false"/>
+ </delete>
<mkdir dir="${install}" />
<exec
dir="."
@@ -187,7 +189,9 @@
<property
name="currentDir"
value="${basedir}" />
- <delete dir="${install}" />
+ <delete removeNotFollowedSymlinks="true" failonerror="false">
+ <fileset dir="${install}" followsymlinks="false"/>
+ </delete>
<mkdir dir="${install}" />
<exec
dir="${install}"
@@ -233,7 +237,9 @@
<target
name="platform-zip"
description="Reinstall the test Eclipse installation if specified by user">
- <delete dir="${platformLocation}" />
+ <delete removeNotFollowedSymlinks="true" failonerror="false">
+ <fileset dir="${platformLocation}" followsymlinks="false"/>
+ </delete>
<mkdir dir="${platformLocation}" />
<exec
dir="${platformLocation}"
@@ -246,7 +252,9 @@
<target
name="platform-tar.gz"
description="Reinstall the test Eclipse installation if specified by user">
- <delete dir="${platformLocation}" />
+ <delete removeNotFollowedSymlinks="true" failonerror="false">
+ <fileset dir="${platformLocation}" followsymlinks="false"/>
+ </delete>
<mkdir dir="${platformLocation}" />
<exec
dir="${platformLocation}"

View File

@ -16,7 +16,7 @@ Epoch: 1
%global eclipse_version %{eclipse_major}.%{eclipse_minor}.%{eclipse_micro}
%if 0%{?fedora} >= 24
%global _jetty_version 9.3.4
%global _jetty_version 9.3.7
%global _lucene_version 5.4.1
%else
%if 0%{?fedora} >= 23
@ -49,7 +49,7 @@ Epoch: 1
Summary: An open, extensible IDE
Name: eclipse
Version: %{eclipse_version}
Release: 11%{?dist}
Release: 12%{?dist}
License: EPL
URL: http://www.eclipse.org/
@ -149,6 +149,7 @@ Patch33: eclipse-bug-483096.patch
Patch34: eclipse-bug-484696.patch
Patch35: eclipse-bug-484729.patch
Patch36: eclipse-bug-477487.patch
Patch37: eclipse-bug-487712.patch
BuildRequires: rsync
BuildRequires: make, gcc
@ -209,7 +210,7 @@ BuildRequires: tycho >= 0.23.0
BuildRequires: tycho-extras >= 0.23.0
BuildRequires: cbi-plugins
BuildRequires: eclipse-ecf-core >= 3.12.0-1
BuildRequires: eclipse-emf-core >= 1:2.11.0-1
BuildRequires: eclipse-emf-core >= 1:2.11.1-1
BuildRequires: eclipse-license
BuildRequires: glassfish-jsp-api >= 2.2.1-4
BuildRequires: glassfish-jsp >= 2.2.5
@ -294,7 +295,7 @@ Requires: batik-css >= 1.8-0.17
Requires: xml-commons-apis >= 1.4.01-12
Requires: atinject >= 1-18
Requires: eclipse-ecf-core >= 3.12.0-1
Requires: eclipse-emf-core >= 1:2.11.0-1
Requires: eclipse-emf-core >= 1:2.11.1-1
Requires: glassfish-jsp-api >= 2.2.1-4
Requires: glassfish-jsp >= 2.2.5
Requires: glassfish-servlet-api >= 3.1.0
@ -410,6 +411,7 @@ pushd eclipse.platform.swt
popd
%patch30 -p1
%patch36 -p1
%patch37 -p1
# Resolving the target platform requires too many changes, so don't use it
%pom_xpath_remove "pom:configuration/pom:target" eclipse-platform-parent
@ -1134,6 +1136,11 @@ fi
%{_libdir}/%{pkg_name}/plugins/org.eclipse.osgi.compatibility.state_*
%changelog
* Wed Feb 17 2016 Mat Booth <mat.booth@redhat.com> - 1:4.5.1-12
- Make test framework correctly delete symlinks so that test suites may complete
when e.g. pydev is installed rhbz#1290685
- Backport patch to fix a webkit crash ebz#487712
* Mon Feb 08 2016 Mat Booth <mat.booth@redhat.com> - 1:4.5.1-11
- Fix java declaration view rhbz#1305107