SF.net SVN: geany: [2247] trunk
eht16 at users.sourceforge.net
eht16 at xxxxx
Sun Feb 10 17:55:00 UTC 2008
Revision: 2247
http://geany.svn.sourceforge.net/geany/?rev=2247&view=rev
Author: eht16
Date: 2008-02-10 09:55:00 -0800 (Sun, 10 Feb 2008)
Log Message:
-----------
Apply patch from Daniel Richard G. to include the hostname in the socket filename (thanks).
Modified Paths:
--------------
trunk/ChangeLog
trunk/src/socket.c
Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog 2008-02-10 17:53:18 UTC (rev 2246)
+++ trunk/ChangeLog 2008-02-10 17:55:00 UTC (rev 2247)
@@ -12,6 +12,8 @@
time stamp.
Before creating a new socket, delete a maybe existing socket and its
symlink.
+ Apply patch from Daniel Richard G. to include the hostname in the
+ socket filename (thanks).
* src/utils.c, src/win32.c, src/win32.h:
Add support for getting hostname on Windows.
Modified: trunk/src/socket.c
===================================================================
--- trunk/src/socket.c 2008-02-10 17:53:18 UTC (rev 2246)
+++ trunk/src/socket.c 2008-02-10 17:55:00 UTC (rev 2247)
@@ -210,19 +210,26 @@
if (sock < 0)
return -1;
#else
- gchar *display = gdk_get_display();
- gint display_num = 0;
+ gchar *display_name = gdk_get_display();
+ gchar *hostname = utils_get_hostname();
+ gchar *p;
- display = strchr(display, ':');
- if (NZV(display))
- display++;
- if (NZV(display))
- display_num = atoi(display);
+ if (display_name == NULL)
+ display_name = g_strdup("NODISPLAY");
+ // these lines are taken from dcopc.c in kdelibs
+ if ((p = strrchr(display_name, '.')) > strrchr(display_name, ':') && p != NULL)
+ *p = '\0';
+ while ((p = strchr(display_name, ':')) != NULL)
+ *p = '_';
+
if (socket_info.file_name == NULL)
- socket_info.file_name = g_strdup_printf("%s%cgeany_socket.%d",
- app->configdir, G_DIR_SEPARATOR, display_num);
+ socket_info.file_name = g_strdup_printf("%s%cgeany_socket.%s%s",
+ app->configdir, G_DIR_SEPARATOR, hostname, display_name);
+ g_free(display_name);
+ g_free(hostname);
+
sock = socket_fd_connect_unix(socket_info.file_name);
if (sock < 0)
{
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Commits
mailing list