comparison src/window.c @ 2500:3d8143fc88e1

[xemacs-hg @ 2005-01-24 23:33:30 by ben] get working with VC7 config.inc.samp: Declare OPTIONAL_LIBRARY_DIR as root of library directories. Redo all graphics library defaults to mirror the versions and directories in the current binary aux distribution on xemacs web site. Enable TIFF and COMPFACE by default since you can now compile with them and binary libs are provided. xemacs.mak: Put our own directories first in case of conflict (e.g. config.h in compface). xemacs.mak: Use MSVCRT to avoid link problems. s/windowsnt.h: bytecode.c, print.c: Add casts to avoid warning. compiler.h: Add MSC_VERSION and include definitions of DOESNT_RETURN and friends here, like for GCC. Need different definitions for VC7 and VC6. s/windowsnt.h: Remove stuff moved to compiler.h. Disable warning 4646 ("function declared with __declspec(noreturn) has non-void return type") on VC7 since lots of Lisp primitives trigger this and there is no easy way to kludge around the warning. glyphs-eimage.c: Some really nasty hacks to allow TIFF and JPEG to both be compiled. #### The better solution is to move the TIFF and JPEG code to different files. glyphs-msw.c: Define __STDC__ to avoid problems with compface.h. intl-auto-encap-win32.c, intl-auto-encap-win32.h, intl-encap-win32.c, syswindows.h: Those wankers at Microsoft cannot leave well enough alone. Various functions change parameter types semi-randomly between VC6 and VC7, so we need to include our own versions that can handle both kinds with appropriate casting. EmacsFrame.c, EmacsShell-sub.c, EmacsShell.c, alloc.c, alloca.c, buffer.c, bytecode.c, charset.h, chartab.c, cm.c, console-stream.c, console.c, data.c, debug.h, device-msw.c, device-tty.c, device-x.c, doprnt.c, dumper.c, dynarr.c, elhash.c, emacs.c, eval.c, event-Xt.c, event-gtk.c, event-msw.c, event-stream.c, events.c, extents.c, faces.c, file-coding.c, fileio.c, fns.c, font-lock.c, frame-gtk.c, frame-x.c, frame.c, free-hook.c, gccache-gtk.c, glyphs-eimage.c, glyphs-gtk.c, glyphs-msw.c, glyphs-x.c, glyphs.c, gtk-glue.c, gutter.c, input-method-xlib.c, insdel.c, intl-win32.c, keymap.c, lisp.h, lread.c, lstream.c, macros.c, malloc.c, menubar-gtk.c, menubar-msw.c, menubar-x.c, mule-coding.c, native-gtk-toolbar.c, number.c, objects-msw.c, objects.c, print.c, process-nt.c, process-unix.c, process.c, ralloc.c, rangetab.c, redisplay-gtk.c, redisplay-msw.c, redisplay-output.c, redisplay-tty.c, redisplay-x.c, redisplay.c, regex.c, scrollbar-gtk.c, scrollbar-x.c, search.c, select-x.c, signal.c, specifier.c, specifier.h, strftime.c, sunplay.c, symbols.c, sysdep.c, sysproc.h, text.c, text.h, toolbar-common.c, toolbar-msw.c, toolbar.c, ui-gtk.c, unexnt.c, unicode.c, win32.c, window.c, xgccache.c, s/windowsnt.h: abort() -> ABORT(). Eliminate preprocessor games with abort() since it creates huge problems in VC7, solvable only by including massive amounts of files in every compile (and not worth it).
author ben
date Mon, 24 Jan 2005 23:34:34 +0000
parents ecf1ebac70d8
children 9f70af3ac939
comparison
equal deleted inserted replaced
2499:4c5ee4d2e921 2500:3d8143fc88e1
641 { 641 {
642 Lisp_Object retval = 642 Lisp_Object retval =
643 real_window_internal (mir->frame->root_window, 643 real_window_internal (mir->frame->root_window,
644 XWINDOW_MIRROR (mir->frame->root_mirror), mir); 644 XWINDOW_MIRROR (mir->frame->root_mirror), mir);
645 if (NILP (retval) && !no_abort) 645 if (NILP (retval) && !no_abort)
646 abort (); 646 ABORT ();
647 647
648 return retval; 648 return retval;
649 } 649 }
650 650
651 /* Given a real window, return its mirror structure. Calls 651 /* Given a real window, return its mirror structure. Calls
704 704
705 if (XFRAME (w->frame)->mirror_dirty) 705 if (XFRAME (w->frame)->mirror_dirty)
706 update_frame_window_mirror (XFRAME (w->frame)); 706 update_frame_window_mirror (XFRAME (w->frame));
707 t = find_window_mirror (w); 707 t = find_window_mirror (w);
708 if (!t) 708 if (!t)
709 abort (); 709 ABORT ();
710 710
711 if (which == CURRENT_DISP) 711 if (which == CURRENT_DISP)
712 return t->current_display_lines; 712 return t->current_display_lines;
713 else if (which == DESIRED_DISP) 713 else if (which == DESIRED_DISP)
714 return t->desired_display_lines; 714 return t->desired_display_lines;
715 else if (which == CMOTION_DISP) 715 else if (which == CMOTION_DISP)
716 /* The CMOTION_DISP display lines are global. */ 716 /* The CMOTION_DISP display lines are global. */
717 return cmotion_display_lines; 717 return cmotion_display_lines;
718 else 718 else
719 abort (); 719 ABORT ();
720 720
721 return 0; /* shut up compiler */ 721 return 0; /* shut up compiler */
722 } 722 }
723 723
724 struct buffer * 724 struct buffer *
728 728
729 if (XFRAME (w->frame)->mirror_dirty) 729 if (XFRAME (w->frame)->mirror_dirty)
730 update_frame_window_mirror (XFRAME (w->frame)); 730 update_frame_window_mirror (XFRAME (w->frame));
731 t = find_window_mirror (w); 731 t = find_window_mirror (w);
732 if (!t) 732 if (!t)
733 abort (); 733 ABORT ();
734 734
735 return t->buffer; 735 return t->buffer;
736 } 736 }
737 737
738 void 738 void
742 742
743 if (XFRAME (w->frame)->mirror_dirty) 743 if (XFRAME (w->frame)->mirror_dirty)
744 update_frame_window_mirror (XFRAME (w->frame)); 744 update_frame_window_mirror (XFRAME (w->frame));
745 t = find_window_mirror (w); 745 t = find_window_mirror (w);
746 if (!t) 746 if (!t)
747 abort (); 747 ABORT ();
748 748
749 t->buffer = b; 749 t->buffer = b;
750 } 750 }
751 751
752 752
1961 { 1961 {
1962 Lisp_Object buf = w->buffer; 1962 Lisp_Object buf = w->buffer;
1963 struct buffer *b = XBUFFER (buf); 1963 struct buffer *b = XBUFFER (buf);
1964 1964
1965 if (b != XMARKER (w->pointm[CURRENT_DISP])->buffer) 1965 if (b != XMARKER (w->pointm[CURRENT_DISP])->buffer)
1966 abort (); 1966 ABORT ();
1967 1967
1968 /* FSF disables this check, so I'll do it too. I hope it won't 1968 /* FSF disables this check, so I'll do it too. I hope it won't
1969 break things. --ben */ 1969 break things. --ben */
1970 #if 0 1970 #if 0
1971 if (w == XWINDOW (Fselected_window (Qnil)) 1971 if (w == XWINDOW (Fselected_window (Qnil))
2831 /* #### Still needed ?? */ 2831 /* #### Still needed ?? */
2832 /* Given the outstanding quality of the rest of this code, 2832 /* Given the outstanding quality of the rest of this code,
2833 I feel no shame about putting this piece of shit in. */ 2833 I feel no shame about putting this piece of shit in. */
2834 if (++lose_lose >= 500) 2834 if (++lose_lose >= 500)
2835 { 2835 {
2836 /* Call to abort() added by Darryl Okahata (16 Nov. 2001), 2836 /* Call to ABORT() added by Darryl Okahata (16 Nov. 2001),
2837 at Ben's request, to catch any remaining bugs. 2837 at Ben's request, to catch any remaining bugs.
2838 2838
2839 If you find that XEmacs is aborting here, and you 2839 If you find that XEmacs is aborting here, and you
2840 need to be up and running ASAP, it should be safe to 2840 need to be up and running ASAP, it should be safe to
2841 comment out the following abort(), as long as you 2841 comment out the following ABORT(), as long as you
2842 leave the "break;" alone. */ 2842 leave the "break;" alone. */
2843 abort(); 2843 ABORT();
2844 break; /* <--- KEEP THIS HERE! Do not delete! */ 2844 break; /* <--- KEEP THIS HERE! Do not delete! */
2845 } 2845 }
2846 2846
2847 /* Note that we do not pay attention here to whether 2847 /* Note that we do not pay attention here to whether
2848 the frame is visible, since Fnext_window skips non-visible frames 2848 the frame is visible, since Fnext_window skips non-visible frames
2982 } 2982 }
2983 break; 2983 break;
2984 } 2984 }
2985 2985
2986 default: 2986 default:
2987 abort (); 2987 ABORT ();
2988 } 2988 }
2989 2989
2990 if (EQ (w, last_window)) 2990 if (EQ (w, last_window))
2991 break; 2991 break;
2992 2992
3074 3074
3075 /* If none of them, then all windows, dedicated or not. */ 3075 /* If none of them, then all windows, dedicated or not. */
3076 w = window_loop (GET_LRU_WINDOW, Qnil, 0, which_frames, 1, which_devices); 3076 w = window_loop (GET_LRU_WINDOW, Qnil, 0, which_frames, 1, which_devices);
3077 3077
3078 /* At this point we damn well better have found something. */ 3078 /* At this point we damn well better have found something. */
3079 if (NILP (w)) abort (); 3079 if (NILP (w)) ABORT ();
3080 #endif 3080 #endif
3081 3081
3082 return w; 3082 return w;
3083 } 3083 }
3084 3084