diff -u -r --exclude='*.o' --exclude='*.lo' --exclude='Make*' streamtuner-0.12.5/src/streamtuner/st-main.c streamtuner-0.12.5-jp/src/streamtuner/st-main.c --- streamtuner-0.12.5/src/streamtuner/st-main.c 2004-08-05 22:01:50.000000000 +0900 +++ streamtuner-0.12.5-jp/src/streamtuner/st-main.c 2004-09-14 17:29:41.000000000 +0900 @@ -178,6 +178,22 @@ return shell ? st_shell_get_transient(shell) : NULL; } + +/** + * st_main_save (void) + * + * This is a function used to blindly save the session. + */ +void +st_main_save (void) +{ + // the following might crash the stream rather than just save the session + st_shell_prepare_finalize(shell); + st_session_save(); + return; +} + + void st_main_quit (void) { diff -u -r --exclude='*.o' --exclude='*.lo' --exclude='Make*' streamtuner-0.12.5/src/streamtuner/st-main.h streamtuner-0.12.5-jp/src/streamtuner/st-main.h --- streamtuner-0.12.5/src/streamtuner/st-main.h 2004-03-07 17:22:00.000000000 +0900 +++ streamtuner-0.12.5-jp/src/streamtuner/st-main.h 2004-09-14 17:48:49.000000000 +0900 @@ -37,6 +37,7 @@ #include GtkWindow *st_main_get_transient (void); +void st_main_save (void); void st_main_quit (void); #endif /* _ST_MAIN_H */ diff -u -r --exclude='*.o' --exclude='*.lo' --exclude='Make*' streamtuner-0.12.5/src/streamtuner/st-shell.c streamtuner-0.12.5-jp/src/streamtuner/st-shell.c --- streamtuner-0.12.5/src/streamtuner/st-shell.c 2004-08-09 22:14:03.000000000 +0900 +++ streamtuner-0.12.5-jp/src/streamtuner/st-shell.c 2004-09-14 19:07:19.000000000 +0900 @@ -681,6 +681,16 @@ "", NULL }, { + N_("/Stream/_Save Session"), "S", + st_main_save, 0, + "", GTK_STOCK_SAVE + }, + { + "/Stream/separator3", NULL, + NULL, 0, + "", NULL + }, + { N_("/Stream/_Quit"), NULL, st_main_quit, 0, "", GTK_STOCK_QUIT diff -u -r --exclude='*.o' --exclude='*.lo' --exclude='Make*' streamtuner-0.12.5/src/streamtuner/st-stock.c streamtuner-0.12.5-jp/src/streamtuner/st-stock.c --- streamtuner-0.12.5/src/streamtuner/st-stock.c 2004-08-07 03:53:54.000000000 +0900 +++ streamtuner-0.12.5-jp/src/streamtuner/st-stock.c 2004-09-14 18:51:56.000000000 +0900 @@ -51,6 +51,7 @@ { ST_STOCK_RECORD, N_("_Record"), 0, 0, NULL }, { ST_STOCK_BROWSE, N_("_Browse"), 0, 0, NULL }, { ST_STOCK_RELOAD, N_("_Reload"), 0, 0, NULL }, + { ST_STOCK_SAVE_SESSION, N_("_Save Current Session"), 0, 0, NULL }, { ST_STOCK_QUIT_WITHOUT_SAVING, N_("_Quit Without Saving"), 0, 0, NULL }, { ST_STOCK_OPEN_LINK, N_("_Open Link"), 0, 0, NULL }, { ST_STOCK_COPY_LINK_ADDRESS, N_("_Copy Link Address"), 0, 0, NULL }, @@ -69,6 +70,7 @@ SGTK_STOCK_ICON_FROM_INLINE(ST_STOCK_RECORD, art_record), SGTK_STOCK_ICON_FROM_INLINE(ST_STOCK_BROWSE, art_browse), SGTK_STOCK_ICON_FROM_STOCK(ST_STOCK_RELOAD, GTK_STOCK_REFRESH), + SGTK_STOCK_ICON_FROM_STOCK(ST_STOCK_SAVE_SESSION, GTK_STOCK_SAVE), SGTK_STOCK_ICON_FROM_STOCK(ST_STOCK_QUIT_WITHOUT_SAVING, GTK_STOCK_QUIT), SGTK_STOCK_ICON_FROM_INLINE(ST_STOCK_SEARCH, art_search), SGTK_STOCK_ICON_FROM_STOCK(ST_STOCK_OPEN_LINK, GTK_STOCK_OPEN), diff -u -r --exclude='*.o' --exclude='*.lo' --exclude='Make*' streamtuner-0.12.5/src/streamtuner/st-stock.h streamtuner-0.12.5-jp/src/streamtuner/st-stock.h --- streamtuner-0.12.5/src/streamtuner/st-stock.h 2004-08-07 03:53:54.000000000 +0900 +++ streamtuner-0.12.5-jp/src/streamtuner/st-stock.h 2004-09-14 18:58:00.000000000 +0900 @@ -40,6 +40,7 @@ #define ST_STOCK_RELOAD "st-reload" +#define ST_STOCK_SAVE_SESSION "st-save-session" #define ST_STOCK_QUIT_WITHOUT_SAVING "st-quit-without-saving" #define ST_STOCK_SEARCH "st-search" #define ST_STOCK_OPEN_LINK "st-open-link"