From 9c0646553ab7bc86fc7ee91769f0bf2873251cc3 Mon Sep 17 00:00:00 2001 From: Charles Kerr Date: Fri, 25 Jul 2008 14:56:28 +0000 Subject: [PATCH] (gtk) #1108: transmission includes several unlocalized strings --- gtk/details.c | 2 +- gtk/msgwin.c | 6 ++++-- gtk/util.c | 11 +++++++---- gtk/util.h | 2 +- 4 files changed, 13 insertions(+), 8 deletions(-) diff --git a/gtk/details.c b/gtk/details.c index 71c747869..0f2be5c0f 100644 --- a/gtk/details.c +++ b/gtk/details.c @@ -789,7 +789,7 @@ refresh_time_lb( GtkWidget * l, time_t t ) if( !t ) gtk_label_set_text( GTK_LABEL( l ), never ); else { - char * str = rfc822date( t ); + char * str = gtr_localtime( t ); gtk_label_set_text( GTK_LABEL( l ), str ); g_free( str ); } diff --git a/gtk/msgwin.c b/gtk/msgwin.c index 2cdc4c687..0668de193 100644 --- a/gtk/msgwin.c +++ b/gtk/msgwin.c @@ -97,13 +97,15 @@ doSave( GtkWindow * parent, gtk_tree_model_get( model, &iter, COL_TR_MSG, &node, -1 ); - date = rfc822date( node->when ); + date = gtr_localtime( node->when ); switch( node->level ) { case TR_MSG_DBG: levelStr = "debug"; break; case TR_MSG_ERR: levelStr = "error"; break; default: levelStr = " "; break; } - fprintf( fp, "%s\t%s\t%s\t%s\n", date, levelStr, node->name, node->message ); + fprintf( fp, "%s\t%s\t%s\t%s\n", date, levelStr, + ( node->name ? node->name : "" ), + ( node->message ? node->message : "" ) ); g_free( date ); } diff --git a/gtk/util.c b/gtk/util.c index 0bafd86a3..006768804 100644 --- a/gtk/util.c +++ b/gtk/util.c @@ -159,13 +159,16 @@ tr_strltime( char * buf, int seconds, size_t buflen ) return buf; } - char * -rfc822date( time_t time ) +gtr_localtime( time_t time ) { const struct tm tm = *localtime( &time ); - char buf[128]; - strftime( buf, sizeof(buf), "%a, %d %b %Y %T %Z", &tm ); + char buf[256], *eoln; + + g_strlcpy( buf, asctime( &tm ), sizeof( buf ) ); + if(( eoln = strchr( buf, '\n' ))) + *eoln = '\0'; + return g_locale_to_utf8( buf, -1, NULL, NULL, NULL ); } diff --git a/gtk/util.h b/gtk/util.h index 66bf909db..9c5440c66 100644 --- a/gtk/util.h +++ b/gtk/util.h @@ -51,7 +51,7 @@ char* tr_strlratio( char * buf, double ratio, size_t buflen ); /* return a human-readable string for the time given in seconds. */ char* tr_strltime( char * buf, int secs, size_t buflen ); -char* rfc822date( time_t epoch_sec ); +char* gtr_localtime( time_t time ); /* create a directory and any missing parent directories */ gboolean -- 2.40.0