Bug 228738 - [Proxy] support automatic proxy lookup mechanism for gnome
Summary: [Proxy] support automatic proxy lookup mechanism for gnome
Status: VERIFIED FIXED
Alias: None
Product: Platform
Classification: Eclipse Project
Component: Team (show other bugs)
Version: 3.4   Edit
Hardware: All Linux
: P3 enhancement (vote)
Target Milestone: 3.4 M7   Edit
Assignee: Szymon Brandys CLA
QA Contact:
URL:
Whiteboard:
Keywords: contributed
Depends on:
Blocks:
 
Reported: 2008-04-24 14:50 EDT by Francis Upton IV CLA
Modified: 2008-05-07 09:25 EDT (History)
0 users

See Also:


Attachments
gnome native code (21.49 KB, patch)
2008-04-25 02:38 EDT, Francis Upton IV CLA
no flags Details | Diff
binary for gnome shared library (96.57 KB, application/octet-stream)
2008-04-25 02:39 EDT, Francis Upton IV CLA
no flags Details
Corrected patch to remove extra files (17.55 KB, patch)
2008-04-25 02:47 EDT, Francis Upton IV CLA
no flags Details | Diff
Some changes in Francis' patch (22.27 KB, patch)
2008-04-25 08:44 EDT, Szymon Brandys CLA
no flags Details | Diff
Some changes in Francis' patch (39.50 KB, patch)
2008-04-25 09:55 EDT, Szymon Brandys CLA
no flags Details | Diff
Added BUILD_INFO file (795 bytes, patch)
2008-05-06 03:05 EDT, Francis Upton IV CLA
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Francis Upton IV CLA 2008-04-24 14:50:51 EDT
This extends the automatic proxy lookup for environment variables on Linux to include Gnome support.

See bug 226462

Patch will be provided.
Comment 1 Francis Upton IV CLA 2008-04-25 02:38:30 EDT
Created attachment 97568 [details]
gnome native code

Called by the UnixProxyProvider (already provided as part of bug 226462).

The crash/hang that was happening in the gnome support has been resolved in this patch.  The problem was the initialization of gconf was done on a thread other than the main thread and that seemed to cause problems sometimes.  The fix was to move the initialization of gconf to the main thread.  The problems disappeared after that.

This patch contains 210 lines of code (the one native file)
Comment 2 Francis Upton IV CLA 2008-04-25 02:39:03 EDT
Created attachment 97569 [details]
binary for gnome shared library
Comment 3 Francis Upton IV CLA 2008-04-25 02:47:17 EDT
Created attachment 97572 [details]
Corrected patch to remove extra files

I couple of files that did not belong in the patch were present.  They are gone.  This only has the native C code.
Comment 4 Szymon Brandys CLA 2008-04-25 08:44:56 EDT
Created attachment 97600 [details]
Some changes in Francis' patch
Comment 5 Szymon Brandys CLA 2008-04-25 09:55:00 EDT
Created attachment 97612 [details]
Some changes in Francis' patch
Comment 6 Tomasz Zarna CLA 2008-04-25 10:09:29 EDT
Library and the latest patch released to HEAD.
Comment 7 Francis Upton IV CLA 2008-05-02 17:27:53 EDT
I filed bug 230040 related to this work.  This patch https://bugs.eclipse.org/bugs/attachment.cgi?id=97572 has only the native code which is correct in all cases, the subsequent patches did not affect the native code.

This patch https://bugs.eclipse.org/bugs/attachment.cgi?id=97572 caused the problem by it's modification to the UnixProxyProvider.  Before the patch, the UnixProxyProvider initialized the gconf native code on the UI thread (and as part of the boot -- so it was not lazy).  This patch revised the UnixProxyProvider to lazily call the native code, but not necessarily on the UI thread, depending on which code first called the UnixProxyProvider.  In the case where the first thing to access remote information (and thus call the UnixProxyProvider) is not done on the UI thread, a hang can result -- an example of this is examining a CVS repository.  This is the subject of bug 230040.

Comment 8 Francis Upton IV CLA 2008-05-02 17:48:03 EDT
Closing on the advice of Szymon.
Comment 9 Szymon Brandys CLA 2008-05-05 07:03:30 EDT
Verified. New bug raised against the initialization issue.
Comment 10 Francis Upton IV CLA 2008-05-06 03:05:57 EDT
Created attachment 98756 [details]
Added BUILD_INFO file

This was missing from the original patch and should be added; it describes how the shared library was built.
Comment 11 Tomasz Zarna CLA 2008-05-07 09:25:38 EDT
BUILD_INFO.txt file added to HEAD.