3 source/built-ins.h | 1 +
4 source/highlightData.c | 4 ++--
5 source/macro.c | 15 +++++++++++++++
6 source/menu.c | 31 ++++++++++++++++++++++++++++++-
7 source/nc.c | 14 ++++++++------
9 source/server.c | 25 ++++++++++---------------
10 source/server_common.c | 5 ++---
11 source/server_common.h | 3 +--
12 source/window.c | 22 +++++++++++++++-------
13 source/windowTitle.c | 11 +++++++++++
14 source/windowTitle.h | 1 +
15 12 files changed, 97 insertions(+), 36 deletions(-)
17 diff --quilt old/source/menu.c new/source/menu.c
20 @@ -56,6 +56,7 @@ static const char CVSID[] = "$Id: menu.c
21 #include "regularExp.h"
23 #include "tabDragDrop.h"
25 #include "../util/getfiles.h"
26 #include "../util/DialogF.h"
27 #include "../util/misc.h"
28 @@ -440,6 +441,8 @@ static void setFontsAP(Widget w, XEvent
30 static void setLanguageModeAP(Widget w, XEvent *event, String *args,
32 +static void releaseClientAP(Widget w, XEvent *event, String *args,
35 static void shortMenusCB(Widget w, WindowInfo *window, caddr_t callData);
36 static void addToToggleShortList(Widget w);
37 @@ -608,7 +611,8 @@ static XtActionsRec Actions[] = {
38 {"set_use_tabs", setUseTabsAP},
39 {"set_fonts", setFontsAP},
40 {"begin_tab_drag", beginTabDragAP},
41 - {"set_language_mode", setLanguageModeAP}
42 + {"set_language_mode", setLanguageModeAP},
43 + {"release_client", releaseClientAP}
46 /* List of previously opened files for File menu */
47 @@ -1302,6 +1306,12 @@ Widget CreateMenuBar(Widget parent, Wind
48 btn = createMenuSeparator(menuPane, "sep1", SHORT);
49 XtVaSetValues(btn, XmNuserData, PERMANENT_MENU_ITEM, NULL);
51 + window->releaseClientItem = createMenuItem(menuPane, "releaseClient",
52 + "Release Client", 'R', doActionCB, "release_client", SHORT);
53 + XtSetSensitive(window->releaseClientItem, False);
54 + btn = createMenuSeparator(menuPane, "sep2", SHORT);
55 + XtVaSetValues(btn, XmNuserData, PERMANENT_MENU_ITEM, NULL);
58 ** Create "Help" pull down menu.
60 @@ -4557,6 +4567,25 @@ static void setLanguageModeAP(Widget w,
64 +static void releaseClientAP(Widget w, XEvent *event, String *args,
67 + WindowInfo *window = WidgetToWindow(w);
70 + fprintf(stderr, "nedit: invalid number of arguments for release_client\n");
77 + DeleteFileClosedProperty(window);
78 + XtSetSensitive(window->releaseClientItem, window->fileClosedAtom != None);
79 + UpdateWindowTitle(window);
80 + RefreshTabState(window);
84 ** Same as AddSubMenu from libNUtil.a but 1) mnemonic is optional (NEdit
85 ** users like to be able to re-arrange the mnemonics so they can set Alt
86 diff --quilt old/source/nedit.h new/source/nedit.h
87 --- old/source/nedit.h
88 +++ new/source/nedit.h
89 @@ -455,6 +455,7 @@ typedef struct _WindowInfo {
91 Widget detachDocumentItem;
92 Widget moveDocumentItem;
93 + Widget releaseClientItem;
94 Widget contextMoveDocumentItem;
95 Widget contextDetachDocumentItem;
96 Widget bgMenuUndoItem;
97 diff --quilt old/source/server.c new/source/server.c
98 --- old/source/server.c
99 +++ new/source/server.c
100 @@ -250,9 +250,7 @@ static Atom findFileClosedProperty(const
102 if (!IsServer) return(None);
104 - atom = CreateServerFileClosedAtom(GetPrefServerName(),
106 - True); /* don't create */
107 + atom = CreateServerFileClosedAtom(GetPrefServerName(), fullname);
111 @@ -262,6 +260,9 @@ static void getFileClosedProperty(Window
112 if (window->filenameSet) {
113 window->fileClosedAtom = findFileClosedProperty(fullname);
115 + XtSetSensitive(window->releaseClientItem, window->fileClosedAtom != None);
116 + UpdateWindowTitle(window);
117 + RefreshTabState(window);
120 /* Delete the 'FileClosed' atom to inform nc that this file has
121 @@ -335,6 +336,7 @@ static void processServerCommandString(c
122 int editFlags, stringLen = strlen(string);
123 int lineNum, createFlag, readFlag, iconicFlag, lastIconic = 0, tabbed = -1;
124 int fileLen, doLen, lmLen, geomLen, charsRead, itemsRead;
126 WindowInfo *window, *lastFile = NULL;
127 long currentDesktop = QueryCurrentDesktop(TheDisplay,
128 RootWindow(TheDisplay, DefaultScreen(TheDisplay)));
129 @@ -374,18 +376,10 @@ static void processServerCommandString(c
130 command both followed by newlines. This bit of code reads the
131 header, and converts the newlines following the filename and do
132 command to nulls to terminate the filename and doCommand strings */
133 - itemsRead = sscanf(inPtr, "%d %d %d %d %d %ld %d %d %d %d%n", &lineNum,
134 + itemsRead = sscanf(inPtr, "%d %d %d %d %d %ld %d %d %d %d %d%n", &lineNum,
135 &readFlag, &createFlag, &iconicFlag, &tabbed, ¤tDesktop,
136 - &fileLen, &doLen, &lmLen, &geomLen, &charsRead);
137 - if (itemsRead == 9) {
138 - /* backward compatibility, without currentDesktop */
142 - fileLen = currentDesktop;
143 - currentDesktop = QueryCurrentDesktop(TheDisplay,
144 - RootWindow(TheDisplay, DefaultScreen(TheDisplay)));
145 - } else if (itemsRead != 10)
146 + &clientWaits, &fileLen, &doLen, &lmLen, &geomLen, &charsRead);
147 + if (itemsRead != 11)
149 inPtr += charsRead + 1;
150 if (fileLen >= 0 && inPtr - string + fileLen > stringLen)
151 @@ -508,7 +502,8 @@ static void processServerCommandString(c
152 command can do anything, including closing the window!) */
153 if (window != NULL) {
154 deleteFileOpenProperty(window, requestname);
155 - getFileClosedProperty(window, requestname);
157 + getFileClosedProperty(window, requestname);
160 SelectNumberedLine(window, lineNum);
161 diff --quilt old/source/window.c new/source/window.c
162 --- old/source/window.c
163 +++ new/source/window.c
164 @@ -2184,16 +2184,19 @@ void UpdateWindowTitle(const WindowInfo
168 + window->fileClosedAtom != None,
171 if (strcmp(title, format) == 0)
174 - iconTitle = XtMalloc(strlen(filename) + 2); /* strlen("*")+1 */
175 + iconTitle = XtMalloc(strlen(filename) + 3); /* strlen("*?")+1 */
177 strcpy(iconTitle, filename);
178 if (window->fileChanged && !window->transient)
179 strcat(iconTitle, "*");
180 + if (window->fileClosedAtom != None)
181 + strcat(iconTitle, "?");
182 XtVaSetValues(window->shell, XmNtitle, title, XmNiconName, iconTitle, NULL);
184 /* If there's a find or replace dialog up in "Keep Up" mode, with a
185 @@ -3812,22 +3815,23 @@ int getTabPosition(Widget tab)
186 void RefreshTabState(WindowInfo *win)
188 XmString s1, tipString;
189 - char labelString[MAXPATHLEN];
190 + char labelString[MAXPATHLEN+3];
191 char *tag = XmFONTLIST_DEFAULT_TAG;
192 unsigned char alignment;
193 - const char *star = (win->fileChanged && !win->transient) ? "*" : "";
194 + const char *changed = (win->fileChanged && !win->transient) ? "*" : "";
195 + const char *waiting = (win->fileClosedAtom != None) ? "?" : "";
197 /* Set tab label to document's filename. Position of
198 "*" (modified) will change per label alignment setting */
199 XtVaGetValues(win->tab, XmNalignment, &alignment, NULL);
200 if (alignment != XmALIGNMENT_END) {
201 - sprintf(labelString, "%s%s",
203 + sprintf(labelString, "%s%s%s",
207 - sprintf(labelString, "%s%s",
208 + sprintf(labelString, "%s%s%s",
214 /* Make the top document stand out a little more */
215 @@ -3990,6 +3994,10 @@ void RefreshMenuToggleStates(WindowInfo
216 if (win->shell != window->shell)
218 XtSetSensitive(window->moveDocumentItem, win != NULL);
221 + XtSetSensitive(window->releaseClientItem,
222 + window->fileClosedAtom != None);
226 diff --quilt old/source/built-ins.h new/source/built-ins.h
227 --- old/source/built-ins.h
228 +++ new/source/built-ins.h
229 @@ -134,3 +134,4 @@ MV(VERSION, version)
230 MV(NEDIT_HOME, neditHome)
231 MV(transient, transient)
232 MV(macro_backtrace, macroBacktrace)
233 +MV(client_attached, clientAttached)
234 diff --quilt old/source/highlightData.c new/source/highlightData.c
235 --- old/source/highlightData.c
236 +++ new/source/highlightData.c
237 @@ -554,8 +554,8 @@ static char *DefaultPatternSets[] = {
238 Built-in Misc Vars:\"(?<!\\Y)\\$(?:active_pane|calltip_ID|column|cursor|display_width|empty_array|file_name|file_path|language_mode|line|locked|max_font_width|min_font_width|modified|n_display_lines|n_panes|rangeset_list|read_only|selection_(?:start|end|left|right)|server_name|text_length|top_line|transient|VERSION|NEDIT_HOME)>\":::Identifier::\n\
239 Built-in Pref Vars:\"(?<!\\Y)\\$(?:auto_indent|em_tab_dist|file_format|font_name|font_name_bold|font_name_bold_italic|font_name_italic|highlight_syntax|incremental_backup|incremental_search_line|make_backup_copy|match_syntax_based|overtype_mode|show_line_numbers|show_matching|statistics_line|tab_dist|use_tabs|wrap_margin|wrap_text)>\":::Identifier2::\n\
240 Built-in Special Vars:\"(?<!\\Y)\\$(?:args|[1-9]|list_dialog_button|macro_name|n_args|read_status|search_end|shell_cmd_status|string_dialog_button|sub_sep|macro_backtrace)>\":::String1::\n\
241 - Built-in Subrs:\"<(?:args|append_file|beep|call|calltip|clipboard_to_string|define|dialog|eval|filename_dialog|dict_(?:insert|complete|save|append|is_element)|e_print|escape_literal|focus_window|get_character|get_matching|get_pattern_(by_name|at_pos)|get_range|get_selection|get_style_(by_name|at_pos)|getenv|highlight_calltip_line|kill_calltip|length|list_dialog|max|min|n_args|rangeset_(?:add|create|destroy|get_by_name|includes|info|invert|range|set_color|set_mode|set_name|subtract)|read_file|replace_in_string|replace_range|replace_selection|replace_substring|search|search_string|select|select_rectangle|set_cursor_pos|set_transient|set_window_title|shell_command|split|string_compare|string_dialog|string_to_clipboard|substring|t_print|timer_(?:add|remove)|to_(?:column|line|pos)|tolower|toupper|valid_number|write_file)(?=\\s*\\()\":::Subroutine::\n\
242 - Menu Actions:\"<(?:new(?:_tab|_opposite)?|open|open-dialog|open_dialog|open-selected|open_selected|close|save|save-as|save_as|save-as-dialog|save_as_dialog|revert-to-saved|revert_to_saved|revert_to_saved_dialog|include-file|include_file|include-file-dialog|include_file_dialog|load-macro-file|load_macro_file|load-macro-file-dialog|load_macro_file_dialog|load-tags-file|load_tags_file|load-tags-file-dialog|load_tags_file_dialog|unload_tags_file|load_tips_file|load_tips_file_dialog|unload_tips_file|print|print-selection|print_selection|exit|undo|redo|delete|select-all|select_all|shift-left|shift_left|shift-left-by-tab|shift_left_by_tab|shift-right|shift_right|shift-right-by-tab|shift_right_by_tab|find|find-dialog|find_dialog|find-again|find_again|find-selection|find_selection|find_incremental|start_incremental_find|replace|replace-dialog|replace_dialog|replace-all|replace_all|replace-in-selection|replace_in_selection|replace-again|replace_again|replace_find|replace_find_same|replace_find_again|goto-line-number|goto_line_number|goto-line-number-dialog|goto_line_number_dialog|goto-selected|goto_selected|mark|mark-dialog|mark_dialog|goto-mark|goto_mark|goto-mark-dialog|goto_mark_dialog|match|select_to_matching|goto_matching|find-definition|find_definition|show_tip|split-pane|split_pane|close-pane|close_pane|detach_document(?:_dialog)?|move_document_dialog|(?:next|previous|last)_document|uppercase|lowercase|fill-paragraph|fill_paragraph|control-code-dialog|control_code_dialog|filter-selection-dialog|filter_selection_dialog|filter-selection|filter_selection|execute-command|execute_command|execute-command-dialog|execute_command_dialog|execute-command-line|execute_command_line|shell-menu-command|shell_menu_command|macro-menu-command|macro_menu_command|bg_menu_command|post_window_bg_menu|post_tab_context_menu|beginning-of-selection|beginning_of_selection|end-of-selection|end_of_selection|repeat_macro|repeat_dialog|raise_window|focus_pane|set_statistics_line|set_incremental_search_line|set_show_line_numbers|set_auto_indent|set_wrap_text|set_wrap_margin|set_highlight_syntax|set_make_backup_copy|set_incremental_backup|set_show_matching|set_match_syntax_based|set_overtype_mode|set_locked|set_tab_dist|set_em_tab_dist|set_use_tabs|set_fonts|set_language_mode)(?=\\s*\\()\":::Subroutine::\n\
243 + Built-in Subrs:\"<(?:args|append_file|beep|call|calltip|client_attached|clipboard_to_string|define|dialog|eval|filename_dialog|dict_(?:insert|complete|save|append|is_element)|e_print|escape_literal|focus_window|get_character|get_matching|get_pattern_(by_name|at_pos)|get_range|get_selection|get_style_(by_name|at_pos)|getenv|highlight_calltip_line|kill_calltip|length|list_dialog|max|min|n_args|rangeset_(?:add|create|destroy|get_by_name|includes|info|invert|range|set_color|set_mode|set_name|subtract)|read_file|replace_in_string|replace_range|replace_selection|replace_substring|search|search_string|select|select_rectangle|set_cursor_pos|set_transient|set_window_title|shell_command|split|string_compare|string_dialog|string_to_clipboard|substring|t_print|timer_(?:add|remove)|to_(?:column|line|pos)|tolower|toupper|valid_number|write_file)(?=\\s*\\()\":::Subroutine::\n\
244 + Menu Actions:\"<(?:new(?:_tab|_opposite)?|open|open-dialog|open_dialog|open-selected|open_selected|close|save|save-as|save_as|save-as-dialog|save_as_dialog|revert-to-saved|revert_to_saved|revert_to_saved_dialog|include-file|include_file|include-file-dialog|include_file_dialog|load-macro-file|load_macro_file|load-macro-file-dialog|load_macro_file_dialog|load-tags-file|load_tags_file|load-tags-file-dialog|load_tags_file_dialog|unload_tags_file|load_tips_file|load_tips_file_dialog|unload_tips_file|print|print-selection|print_selection|exit|undo|redo|delete|select-all|select_all|shift-left|shift_left|shift-left-by-tab|shift_left_by_tab|shift-right|shift_right|shift-right-by-tab|shift_right_by_tab|find|find-dialog|find_dialog|find-again|find_again|find-selection|find_selection|find_incremental|start_incremental_find|replace|replace-dialog|replace_dialog|replace-all|replace_all|replace-in-selection|replace_in_selection|replace-again|replace_again|replace_find|replace_find_same|replace_find_again|goto-line-number|goto_line_number|goto-line-number-dialog|goto_line_number_dialog|goto-selected|goto_selected|mark|mark-dialog|mark_dialog|goto-mark|goto_mark|goto-mark-dialog|goto_mark_dialog|match|select_to_matching|goto_matching|find-definition|find_definition|show_tip|split-pane|split_pane|close-pane|close_pane|detach_document(?:_dialog)?|move_document_dialog|(?:next|previous|last)_document|uppercase|lowercase|fill-paragraph|fill_paragraph|control-code-dialog|control_code_dialog|filter-selection-dialog|filter_selection_dialog|filter-selection|filter_selection|execute-command|execute_command|execute-command-dialog|execute_command_dialog|execute-command-line|execute_command_line|shell-menu-command|shell_menu_command|macro-menu-command|macro_menu_command|bg_menu_command|post_window_bg_menu|post_tab_context_menu|beginning-of-selection|beginning_of_selection|end-of-selection|end_of_selection|repeat_macro|repeat_dialog|raise_window|focus_pane|set_statistics_line|set_incremental_search_line|set_show_line_numbers|set_auto_indent|set_wrap_text|set_wrap_margin|set_highlight_syntax|set_make_backup_copy|set_incremental_backup|set_show_matching|set_match_syntax_based|set_overtype_mode|set_locked|set_tab_dist|set_em_tab_dist|set_use_tabs|set_fonts|set_language_mode|release_client)(?=\\s*\\()\":::Subroutine::\n\
245 Text Actions:\"<(?:self-insert|self_insert|grab-focus|grab_focus|extend-adjust|extend_adjust|extend-start|extend_start|extend-end|extend_end|secondary-adjust|secondary_adjust|secondary-or-drag-adjust|secondary_or_drag_adjust|secondary-start|secondary_start|secondary-or-drag-start|secondary_or_drag_start|process-bdrag|process_bdrag|move-destination|move_destination|move-to|move_to|move-to-or-end-drag|move_to_or_end_drag|end_drag|copy-to|copy_to|copy-to-or-end-drag|copy_to_or_end_drag|exchange|process-cancel|process_cancel|paste-clipboard|paste_clipboard|copy-clipboard|copy_clipboard|cut-clipboard|cut_clipboard|copy-primary|copy_primary|cut-primary|cut_primary|newline|newline-and-indent|newline_and_indent|newline-no-indent|newline_no_indent|delete-selection|delete_selection|delete-previous-character|delete_previous_character|delete-next-character|delete_next_character|delete-previous-word|delete_previous_word|delete-next-word|delete_next_word|delete-to-start-of-line|delete_to_start_of_line|delete-to-end-of-line|delete_to_end_of_line|forward-character|forward_character|backward-character|backward_character|key-select|key_select|process-up|process_up|process-down|process_down|process-shift-up|process_shift_up|process-shift-down|process_shift_down|process-home|process_home|forward-word|forward_word|backward-word|backward_word|forward-paragraph|forward_paragraph|backward-paragraph|backward_paragraph|beginning-of-line|beginning_of_line|end-of-line|end_of_line|beginning-of-file|beginning_of_file|end-of-file|end_of_file|next-page|next_page|previous-page|previous_page|page-left|page_left|page-right|page_right|toggle-overstrike|toggle_overstrike|scroll-up|scroll_up|scroll-down|scroll_down|scroll_left|scroll_right|scroll-to-line|scroll_to_line|select-all|select_all|select_word|deselect-all|deselect_all|focusIn|focusOut|process-return|process_return|process-tab|process_tab|insert-string|insert_string|mouse_pan)(?=\\s*\\()\":::Subroutine::\n\
246 Macro Hooks:\"<(?:(?:pre|post)_(?:open|save)|cursor_moved|modified|(?:losing_)?focus|language_mode)_hook(?=\\s*\\()\":::Subroutine1::\n\
247 Keyword:\"<(?:break|case|continue|default|define|delete|do|else|finally|for|if|in|readonly|return|switch|typeof|while)>\":::Keyword::\n\
248 diff --quilt old/source/macro.c new/source/macro.c
249 --- old/source/macro.c
250 +++ new/source/macro.c
251 @@ -7216,6 +7216,21 @@ static int macroBacktraceMV(WindowInfo *
252 return GetBacktrace(result, errMsg);
255 +static int clientAttachedMV(WindowInfo *window, DataValue *argList,
256 + int nArgs, DataValue *result, char **errMsg)
258 + result->tag = INT_TAG;
261 + /* if we don't run in server mode, return always false */
265 + result->val.n = window->fileClosedAtom != None;
270 static int wrongNArgsErr(char **errMsg)
272 *errMsg = "Wrong number of arguments to function %s";
273 diff --quilt old/source/nc.c new/source/nc.c
276 @@ -228,8 +228,7 @@ static void createWaitProperties(void)
277 fileListHead.waitForCloseCount++;
278 item->waitForFileClosedAtom =
279 CreateServerFileClosedAtom(Preferences.serverName,
283 setPropertyValue(item->waitForFileClosedAtom);
286 @@ -779,9 +778,10 @@ static void parseCommandLine(int argc, c
289 /* See below for casts */
290 - sprintf(outPtr, "%d %d %d %d %d %ld %ld %ld %ld %ld\n"
291 + sprintf(outPtr, "%d %d %d %d %d %ld %d %ld %ld %ld %ld\n"
292 "%s%s\n%s\n%s\n%s\n%n",
293 lineNum, read, create, iconic, tabbed, currentDesktop,
294 + !!Preferences.waitForClose,
295 filePrefixLen + (long) strlen(path),
296 (long) strlen(toDoCommand), (long) strlen(langMode),
297 (long) strlen(geometry),
298 @@ -824,8 +824,9 @@ static void parseCommandLine(int argc, c
299 The "long" cast on strlen() is necessary because size_t
300 is 64 bit on Alphas, and 32-bit on most others. There is
301 no printf format specifier for "size_t", thanx, ANSI. */
302 - sprintf(outPtr, "%d %d %d %d %d %ld %ld %ld %ld %ld\n%n", lineNum,
303 - read, create, iconic, isTabbed, currentDesktop,
304 + sprintf(outPtr, "%d %d %d %d %d %ld %d %ld %ld %ld %ld\n%n",
305 + lineNum, read, create, iconic, isTabbed,
306 + currentDesktop, !!Preferences.waitForClose,
307 filePrefixLen + (long) strlen(path),
308 (long) strlen(toDoCommand), (long) strlen(langMode),
309 (long) strlen(geometry), &charsWritten);
310 @@ -888,7 +889,7 @@ static void parseCommandLine(int argc, c
311 /* TODO: what about other platforms? */
314 - sprintf(outPtr, "0 0 0 %d %d %ld %ld %ld %ld %ld\n%n", iconic, tabbed,
315 + sprintf(outPtr, "0 0 0 %d %d %ld 0 %ld %ld %ld %ld\n%n", iconic, tabbed,
316 currentDesktop, -(filePrefixLen + length),
317 (long) strlen(toDoCommand), (long) strlen(langMode),
318 (long) strlen(geometry), &charsWritten);
319 @@ -1090,3 +1091,4 @@ static void printNcVersion(void ) {
320 COMPILE_OS, COMPILE_MACHINE, COMPILE_COMPILER,
324 diff --quilt old/source/windowTitle.c new/source/windowTitle.c
325 --- old/source/windowTitle.c
326 +++ new/source/windowTitle.c
327 @@ -193,6 +193,7 @@ static void compressWindowTitle(char *ti
329 /* remove empty paranthesis pairs */
331 + sourcePtr = removeSequence(sourcePtr, ' ');
332 if (*sourcePtr == ')') {
335 @@ -202,6 +203,7 @@ static void compressWindowTitle(char *ti
339 + sourcePtr = removeSequence(sourcePtr, ' ');
340 if (*sourcePtr == ']') {
343 @@ -211,6 +213,7 @@ static void compressWindowTitle(char *ti
347 + sourcePtr = removeSequence(sourcePtr, ' ');
348 if (*sourcePtr == '}') {
351 @@ -250,6 +253,7 @@ static void compressWindowTitle(char *ti
352 of leading hosts components to dispaly.
355 +** %w : "waiting" if a client is waiting for the closure of this document
357 ** if the ClearCase view tag and server name are identical, only the first one
358 ** specified in the formatting string will be displayed.
359 @@ -263,6 +267,7 @@ char *FormatWindowTitle(const char* file
364 const char* titleFormat)
366 static char title[WINDOWTITLE_MAX_LEN];
367 @@ -410,6 +415,11 @@ char *FormatWindowTitle(const char* file
368 titlePtr = safeCharAdd(titlePtr, titleEnd, '%');
371 + case 'w': /* client is waiting */
372 + if (isServer && clientWaits)
373 + titlePtr = safeStrCpy(titlePtr, titleEnd, "waiting");
376 case '*': /* short file status ? */
377 fileStatusPresent = True;
378 if (*titleFormat && *titleFormat == 'S')
379 @@ -593,6 +603,7 @@ static void formatChangedCB(Widget w, Xt
380 etDialog.lockReasons,
381 XmToggleButtonGetState(etDialog.oFileChangedW),
382 XmToggleButtonGetState(etDialog.oTransientW),
386 XmTextFieldSetString(etDialog.previewW, title);
387 diff --quilt old/source/windowTitle.h new/source/windowTitle.h
388 --- old/source/windowTitle.h
389 +++ new/source/windowTitle.h
390 @@ -43,6 +43,7 @@ char *FormatWindowTitle(const char* file
395 const char* titleFormat);
397 void EditCustomTitleFormat(WindowInfo *window);
398 diff --quilt old/source/server_common.c new/source/server_common.c
399 --- old/source/server_common.c
400 +++ new/source/server_common.c
401 @@ -99,8 +99,7 @@ Atom CreateServerFileOpenAtom(const char
404 Atom CreateServerFileClosedAtom(const char *serverName,
406 - Bool only_if_exist)
409 char propName[14+1+MAXNODENAMELEN+1+MAXUSERNAMELEN+1+MAXSERVERNAMELEN+1+MAXPATHLEN+1+9+1];
410 const char *userName = GetUserName(NEDIT_NAME);
411 @@ -108,7 +107,7 @@ Atom CreateServerFileClosedAtom(const ch
414 sprintf(propName, "NEDIT_5.7_FILE_%s_%s_%s_%s_WF_CLOSED", hostName, userName, serverName, path);
415 - atom = XInternAtom(TheDisplay, propName, only_if_exist);
416 + atom = XInternAtom(TheDisplay, propName, False);
420 diff --quilt old/source/server_common.h new/source/server_common.h
421 --- old/source/server_common.h
422 +++ new/source/server_common.h
423 @@ -43,8 +43,7 @@ void CreateServerPropertyAtoms(const cha
424 Atom CreateServerFileOpenAtom(const char *serverName,
426 Atom CreateServerFileClosedAtom(const char *serverName,
428 - Bool only_if_exists);
430 void DeleteServerFileAtoms(const char* serverName, Window rootWindow);
432 #endif /* NEDIT_SERVER_COMMON_H_INCLUDED */