rpms/eclipse/FC-6 eclipse-launcher-addplatformtotildeeclipse.patch, 1.2, 1.3 eclipse.spec, 1.355, 1.356

fedora-cvs-commits at redhat.com fedora-cvs-commits at redhat.com
Mon Apr 30 17:58:48 UTC 2007


Author: bkonrath

Update of /cvs/dist/rpms/eclipse/FC-6
In directory cvs.devel.redhat.com:/tmp/cvs-serv1129

Modified Files:
	eclipse-launcher-addplatformtotildeeclipse.patch eclipse.spec 
Log Message:
* Mon Apr 30 2007 Ben Konrath <bkonrath at redhat.com> 3.2.2-4.fc6
- Add workaround in launcher-addplatformtotildeeclipse.patch for problems 
  caused by bug #238107.
- Resolves: #238107.


eclipse-launcher-addplatformtotildeeclipse.patch:
 eclipse.c        |    2 +
 gtk/eclipseGtk.c |   92 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 94 insertions(+)

Index: eclipse-launcher-addplatformtotildeeclipse.patch
===================================================================
RCS file: /cvs/dist/rpms/eclipse/FC-6/eclipse-launcher-addplatformtotildeeclipse.patch,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- eclipse-launcher-addplatformtotildeeclipse.patch	27 Apr 2007 08:45:47 -0000	1.2
+++ eclipse-launcher-addplatformtotildeeclipse.patch	30 Apr 2007 17:58:46 -0000	1.3
@@ -1,13 +1,27 @@
-### Eclipse Workspace Patch 1.0
-#P platform-launcher
+Index: library/eclipse.c
+===================================================================
+RCS file: /cvsroot/eclipse/platform-launcher/library/eclipse.c,v
+retrieving revision 1.71
+diff -u -r1.71 eclipse.c
+--- library/eclipse.c	25 Apr 2006 14:31:50 -0000	1.71
++++ library/eclipse.c	30 Apr 2007 17:43:21 -0000
+@@ -512,6 +513,8 @@
+     /* Get the command to start the Java VM. */
+     vmCommandArgs = getVMCommand( argc, argv );
+ 
++    addPlatformToTildeDotEclipse();
++
+     /* While the Java VM should be restarted */
+     vmCommand = vmCommandArgs;
+     while (vmCommand != NULL)
 Index: library/gtk/eclipseGtk.c
 ===================================================================
 RCS file: /cvsroot/eclipse/platform-launcher/library/gtk/eclipseGtk.c,v
 retrieving revision 1.27
 diff -u -r1.27 eclipseGtk.c
 --- library/gtk/eclipseGtk.c	27 Mar 2006 18:25:42 -0000	1.27
-+++ library/gtk/eclipseGtk.c	27 Apr 2007 08:39:06 -0000
-@@ -335,3 +335,88 @@
++++ library/gtk/eclipseGtk.c	30 Apr 2007 17:43:21 -0000
+@@ -335,3 +335,95 @@
    	gtk_main_quit();
    	return FALSE;
  }
@@ -16,14 +30,12 @@
 +void addPlatformToTildeDotEclipse()
 +{
 +	gchar *platform_xml, *touched;
-+	gchar *config_end_position;
-+    gsize old_length;
-+    gchar *old_contents, *new_contents;
-+    GError *error = NULL;
-+	const gchar *site_element = "<site url=\"platform:/base/\" enabled=\"true\" updateable=\"true\" policy=\"USER-EXCLUDE\">\n<feature id=\"org.eclipse.rcp\" version=\"3.2.2.r322_v20070104-iwP0VLKnfFC923K\" url=\"features/org.eclipse.rcp_3.2.2.r322_v20070104-iwP0VLKnfFC923K/\">\n</feature>\n</site>\n\0";
++	gchar *rcp321_position;
++	gchar *platform_xml_contents;
++	GError *error = NULL;
 +	
 +	platform_xml = g_strconcat(g_get_home_dir(), "/.eclipse/org.eclipse.platform_3.2.0/configuration/org.eclipse.update/platform.xml", NULL);
-+    touched = g_strconcat(g_get_home_dir(), "/.eclipse/.dont-need-to-modify-homedir-fedora", NULL);
++	touched = g_strconcat(g_get_home_dir(), "/.eclipse/.homedirmodified-fedora", NULL);
 +	
 +
 +	if (!g_file_test(platform_xml, G_FILE_TEST_EXISTS))
@@ -33,82 +45,75 @@
 +	 	 * so add the appropriate file to ~/.eclipse. */
 +	   	if (g_file_set_contents(touched, "\0", -1, &error) == FALSE)
 +		{
-+			g_print("Error touching ~/.eclipse/.dont-need-to-modify-homedir-fedora.");
++			g_print("Error touching ~/.eclipse/.homedirmodified-fedora.");
 +			g_print(g_strconcat(error->message, "\n\0", NULL));
 +			g_free(error);
 +		}
-+	    g_free(platform_xml);
-+	    g_free(touched);
++		g_free(platform_xml);
++		g_free(touched);
 +		return;
 +		
-+	} else if (g_file_test(touched, G_FILE_TEST_EXISTS)) {
++	} else {
++		/* platform_xml exists, workaround these two bugs:
++		 * https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=238107
++		 * https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=238109
++		 * 
++		 * remove the unwanted feature if its in platform.xml */
++
++		 if (g_file_get_contents(platform_xml, &platform_xml_contents, NULL, &error) == FALSE) {
++		 	g_print("Error reading platform.xml in ~/.eclipse.\
++					You should remove ~/.eclipse before restarting Eclipse:\0");
++			g_print(g_strconcat(error->message, "\n\0", NULL));
++        		g_free(error);
++       			g_free(platform_xml);
++	    		g_free(touched);
++        		return;
++		 }
++		 
++		 gchar *unwanted_feature = "<feature id=\"org.eclipse.rcp\" version=\"3.2.1.r321_v20060801-clWbqCmjexIWDqg\" url=\"features/org.eclipse.rcp_3.2.1.r321_v20060801-clWbqCmjexIWDqg/\">\n</feature>\0";
++		 rcp321_position = g_strrstr(platform_xml_contents, unwanted_feature);
++
++		 if (rcp321_position != NULL) 
++		 {
++		 	int i;
++		 	for (i = 0; i < strlen(unwanted_feature); i++) {
++				rcp321_position[i] = ' ';
++		 	}
++		 }
++		 
++		if (g_file_set_contents(platform_xml, platform_xml_contents, -1, &error) == FALSE)
++		{
++        		g_print("Error writing platform.xml in ~/.eclipse.\
++		         	You should remove ~/.eclipse before restarting Eclipse:\0");
++			g_print(g_strconcat(error->message, "\n\0", NULL));
++        		g_free(error);
++        		g_free(touched);
++        		g_free(platform_xml);
++        		g_free(platform_xml_contents);
++        		return;
++    		}
++    	
++        	g_free(platform_xml_contents);
++	}
++	
++	
++	if (g_file_test(touched, G_FILE_TEST_EXISTS)) {
 +		/* touched exists, we don't need to do anything */ 
 +		g_free(platform_xml);
-+	    g_free(touched);
++		g_free(touched);
 +		return;
 +	}
 +
-+
-+    /* At this point platform_xml exists and touched does not exist */
-+    
-+    if (g_file_get_contents (platform_xml,
-+                             &old_contents, &old_length, &error) == FALSE)
-+    {
-+    	g_print("Error reading platform.xml in ~/.eclipse.\
-+		         You should remove ~/.eclipse before restarting Eclipse:\0");
-+		g_print(g_strconcat(error->message, "\n\0", NULL));
-+        g_free(error);
-+       	g_free(platform_xml);
-+	    g_free(touched);
-+        return;
-+    }
-+
-+    config_end_position = g_strrstr_len(old_contents, old_length, "</config>");
-+    *config_end_position = '\0';
-+    new_contents = g_strconcat(old_contents, site_element, "</config>\n\0", NULL);
-+
-+    if (g_file_set_contents(platform_xml,
-+                            new_contents, -1, &error) == FALSE)
-+    {
-+        g_print("Error writing platform.xml in ~/.eclipse.\
-+		         You should remove ~/.eclipse before restarting Eclipse:\0");
-+		g_print(g_strconcat(error->message, "\n\0", NULL));
-+        g_free(error);
-+        g_free(touched);
-+        g_free(platform_xml);
-+        g_free(new_contents);
-+        g_free(old_contents);
-+        return;
-+    }
-+
-+	if (g_file_set_contents(touched, "\0", -1, &error) == FALSE)
++	/* At this point platform_xml exists and touched does not exist. */
++	if (g_remove (platform_xml) < 0) 
 +	{
-+		g_print("Error touching ~/.eclipse/.dont-need-to-modify-homedir-fedora.\
++       		g_print("Error writing platform.xml in ~/.eclipse.\
 +		         You should remove ~/.eclipse before restarting Eclipse:\0");
 +		g_print(g_strconcat(error->message, "\n\0", NULL));
-+		g_free(error);
++        	g_free(error);
 +	}
 +
-+    g_free(platform_xml);
-+    g_free(touched);
-+    g_free(new_contents);
-+    g_free(old_contents);
-+    
-+    return;
++	g_free(platform_xml);
++	g_free(touched);
++	return;
 +}
-Index: library/eclipse.c
-===================================================================
-RCS file: /cvsroot/eclipse/platform-launcher/library/eclipse.c,v
-retrieving revision 1.71
-diff -u -r1.71 eclipse.c
---- library/eclipse.c	25 Apr 2006 14:31:50 -0000	1.71
-+++ library/eclipse.c	27 Apr 2007 08:39:05 -0000
-@@ -512,6 +512,8 @@
-     /* Get the command to start the Java VM. */
-     vmCommandArgs = getVMCommand( argc, argv );
- 
-+    addPlatformToTildeDotEclipse();
-+
-     /* While the Java VM should be restarted */
-     vmCommand = vmCommandArgs;
-     while (vmCommand != NULL)


Index: eclipse.spec
===================================================================
RCS file: /cvs/dist/rpms/eclipse/FC-6/eclipse.spec,v
retrieving revision 1.355
retrieving revision 1.356
diff -u -r1.355 -r1.356
--- eclipse.spec	27 Apr 2007 08:45:47 -0000	1.355
+++ eclipse.spec	30 Apr 2007 17:58:46 -0000	1.356
@@ -19,7 +19,7 @@
 Summary:        An open, extensible IDE
 Name:           eclipse
 Version:        %{eclipse_majmin}.%{eclipse_micro}
-Release:        3%{?dist} 
+Release:        4%{?dist} 
 License:        Eclipse Public License
 Group:          Text Editors/Integrated Development Environments (IDE)
 URL:            http://www.eclipse.org/
@@ -1763,6 +1763,11 @@
 %{_libdir}/%{name}/plugins/org.eclipse.sdk_*
 
 %changelog
+* Mon Apr 30 2007 Ben Konrath <bkonrath at redhat.com> 3.2.2-4.fc6
+- Add workaround in launcher-addplatformtotildeeclipse.patch for problems 
+  caused by bug #238107.
+- Resolves: #238107.
+ 
 * Fri Apr 27 2007 Ben Konrath <bkonrath at redhat.com> 3.2.2-3.fc6
 - Fix problem in launcher-addplatformtotildeeclipse.patch.
 - Resolves: #238107.




More information about the fedora-cvs-commits mailing list