|
|
65f3b0e |
--- mc-4.6.1a/src/main.c.userhost 2005-06-06 13:35:08.926427736 +0200
|
|
|
65f3b0e |
+++ mc-4.6.1a/src/main.c 2005-06-06 13:39:11.551543112 +0200
|
|
|
e52ead9 |
@@ -32,6 +32,7 @@
|
|
|
e52ead9 |
#include <sys/types.h>
|
|
|
e52ead9 |
#include <sys/stat.h>
|
|
|
e52ead9 |
#include <unistd.h>
|
|
|
e52ead9 |
+#include <pwd.h>
|
|
|
e52ead9 |
|
|
|
e52ead9 |
#include "global.h"
|
|
|
e52ead9 |
#include "tty.h"
|
|
|
65f3b0e |
@@ -1611,9 +1612,22 @@ void
|
|
|
e52ead9 |
update_xterm_title_path (void)
|
|
|
e52ead9 |
{
|
|
|
65f3b0e |
char *p, *s;
|
|
|
e52ead9 |
+ char h[64];
|
|
|
e52ead9 |
+ struct passwd *pw;
|
|
|
e52ead9 |
|
|
|
e52ead9 |
if (xterm_flag && xterm_title) {
|
|
|
e52ead9 |
p = s = g_strdup (strip_home_and_password (current_panel->cwd));
|
|
|
65f3b0e |
+ if ( !gethostname (h, 64) ) {
|
|
|
65f3b0e |
+ h[63] = '\0'; /* Be sure the hostname is NUL terminated */
|
|
|
65f3b0e |
+ s = g_strdup_printf ("%s:%s", h, s);
|
|
|
65f3b0e |
+ g_free (p);
|
|
|
65f3b0e |
+ p = s;
|
|
|
65f3b0e |
+ }
|
|
|
65f3b0e |
+ if ( (pw = getpwuid(getuid())) ) {
|
|
|
65f3b0e |
+ s = g_strdup_printf ("%s@%s", pw->pw_name, s);
|
|
|
65f3b0e |
+ g_free (p);
|
|
|
65f3b0e |
+ p = s;
|
|
|
65f3b0e |
+ }
|
|
|
e52ead9 |
do {
|
|
|
65f3b0e |
#ifndef UTF8
|
|
|
65f3b0e |
if (!is_printable ((unsigned char) *s))
|