Public bug reported:

Geany use socket-file session like
"~/.config/geany/geany_socket_ubuntu__0" to share data for multiple
opening geany by "single" user.

By a bug is that, when running "geany" and "sudo geany", only either can
be open, because their socket-file sessions are conflict.

This situation make geany  look buggy.

I suggest a brief sollution to solve this problem, by adding gid to
socket-file which aims to divide sessions of multiply users ->

In "${GEANY_SOURCE}/src/socket.c", changing the following line:

  socket_info.file_name = g_strdup_printf("%s%cgeany_socket_%s_%s",
   app->configdir, G_DIR_SEPARATOR, hostname, display_name);

into:

  socket_info.file_name = g_strdup_printf("%s%cgeany_socket_%s_%s-%d",
   app->configdir, G_DIR_SEPARATOR, hostname, display_name, getuid());


will make it work normally, and I have tested that.

ProblemType: Bug
DistroRelease: Ubuntu 16.04
Package: geany 1.26+dfsg-1
ProcVersionSignature: Ubuntu 4.3.0-7.18-generic 4.3.3
Uname: Linux 4.3.0-7-generic x86_64
ApportVersion: 2.19.3-0ubuntu3
Architecture: amd64
CurrentDesktop: GNOME-Flashback
Date: Fri Jan 22 03:10:55 2016
SourcePackage: geany
UpgradeStatus: No upgrade log present (probably fresh install)

** Affects: geany (Ubuntu)
     Importance: Undecided
         Status: New


** Tags: amd64 apport-bug xenial

** Description changed:

  Geany use socket-file session like
  "~/.config/geany/geany_socket_ubuntu__0" to share data for multiple
  opening geany by "single" user.
  
  By a bug is that, when running "geany" and "sudo geany", only either can
  be open, because their socket-file sessions are conflict.
  
  This situation make geany  look buggy.
  
  I suggest a brief sollution to solve this problem, by adding gid to
  socket-file which aims to divide sessions of multiply users ->
  
- 
  In "${GEANY_SOURCE}/src/socket.c", changing the following line:
  
-               socket_info.file_name = 
g_strdup_printf("%s%cgeany_socket_%s_%s-%d",
-                       app->configdir, G_DIR_SEPARATOR, hostname, 
display_name, getuid());
+   socket_info.file_name = g_strdup_printf("%s%cgeany_socket_%s_%s-%d",
+    app->configdir, G_DIR_SEPARATOR, hostname, display_name, getuid());
  
  into:
  
-               socket_info.file_name = 
g_strdup_printf("%s%cgeany_socket_%s_%s",
-                       app->configdir, G_DIR_SEPARATOR, hostname, 
display_name);
- 
+   socket_info.file_name = g_strdup_printf("%s%cgeany_socket_%s_%s",
+    app->configdir, G_DIR_SEPARATOR, hostname, display_name);
  
  will make it work normally, and I have tested that.
+ 
  
  ProblemType: Bug
  DistroRelease: Ubuntu 16.04
  Package: geany 1.26+dfsg-1
  ProcVersionSignature: Ubuntu 4.3.0-7.18-generic 4.3.3
  Uname: Linux 4.3.0-7-generic x86_64
  ApportVersion: 2.19.3-0ubuntu3
  Architecture: amd64
  CurrentDesktop: GNOME-Flashback
  Date: Fri Jan 22 03:10:55 2016
- JournalErrors:
-  Error: command ['journalctl', '-b', '--priority=warning', '--lines=1000'] 
failed with exit code 1: Hint: You are currently not seeing messages from other 
users and the system.
-        Users in the 'systemd-journal' group can see all messages. Pass -q to
-        turn off this notice.
-  No journal files were opened due to insufficient permissions.
  SourcePackage: geany
  UpgradeStatus: No upgrade log present (probably fresh install)

** Description changed:

  Geany use socket-file session like
  "~/.config/geany/geany_socket_ubuntu__0" to share data for multiple
  opening geany by "single" user.
  
  By a bug is that, when running "geany" and "sudo geany", only either can
  be open, because their socket-file sessions are conflict.
  
  This situation make geany  look buggy.
  
  I suggest a brief sollution to solve this problem, by adding gid to
  socket-file which aims to divide sessions of multiply users ->
  
  In "${GEANY_SOURCE}/src/socket.c", changing the following line:
  
-   socket_info.file_name = g_strdup_printf("%s%cgeany_socket_%s_%s-%d",
-    app->configdir, G_DIR_SEPARATOR, hostname, display_name, getuid());
+   socket_info.file_name = g_strdup_printf("%s%cgeany_socket_%s_%s",
+    app->configdir, G_DIR_SEPARATOR, hostname, display_name);
  
  into:
  
-   socket_info.file_name = g_strdup_printf("%s%cgeany_socket_%s_%s",
-    app->configdir, G_DIR_SEPARATOR, hostname, display_name);
+   socket_info.file_name = g_strdup_printf("%s%cgeany_socket_%s_%s-%d",
+    app->configdir, G_DIR_SEPARATOR, hostname, display_name, getuid());
+ 
  
  will make it work normally, and I have tested that.
- 
  
  ProblemType: Bug
  DistroRelease: Ubuntu 16.04
  Package: geany 1.26+dfsg-1
  ProcVersionSignature: Ubuntu 4.3.0-7.18-generic 4.3.3
  Uname: Linux 4.3.0-7-generic x86_64
  ApportVersion: 2.19.3-0ubuntu3
  Architecture: amd64
  CurrentDesktop: GNOME-Flashback
  Date: Fri Jan 22 03:10:55 2016
  SourcePackage: geany
  UpgradeStatus: No upgrade log present (probably fresh install)

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1536760

Title:
  geany cannot open simultaneously by multiple user

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/geany/+bug/1536760/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to