bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#13479: Cross Compiling for ARM


From: Ross Biro
Subject: bug#13479: Cross Compiling for ARM
Date: Tue, 22 Jan 2013 22:49:12 -0500

I don't have a wset_new_total.  Is that a new function?  I'm using mostly stock 24.2.

    Ross


On Sat, Jan 19, 2013 at 5:11 AM, martin rudalics <rudalics@gmx.at> wrote:
I haven't investigated.  But because protecting those calls by if
(initialized) and even moving the lisp->C binding for
window_root_window_resize_vertically to after initialization didn't help, I
suspect the issue might be deeper than just protecting C calls to lisp.  I
really don't know how to follow up though.

If Lisp hasn't been called yet, the root window cannot have
been split yet.  So in the case at hand the following patch
sould work.  Can you please try it?

Thanks, martin


=== modified file 'src/window.c'
--- src/window.c        2013-01-11 23:08:55 +0000
+++ src/window.c        2013-01-19 09:54:07 +0000
@@ -4207,8 +4207,15 @@

   root = FRAME_ROOT_WINDOW (f);
   r = XWINDOW (root);
-  value = call2 (Qwindow_resize_root_window_vertically,
-                root, make_number (- delta));
+  if (WINDOW_LIVE_P (root))
+    {
+      wset_new_total (r, make_number (XFASTINT (r->total_lines) - delta));
+      value = make_number (- delta);
+    }
+  else
+    value = call2 (Qwindow_resize_root_window_vertically,
+                  root, make_number (- delta));
+
   if (INTEGERP (value) && window_resize_check (r, 0))
     {
       block_input ();
@@ -4245,8 +4252,15 @@
     {
       root = FRAME_ROOT_WINDOW (f);
       r = XWINDOW (root);
-      value = call2 (Qwindow_resize_root_window_vertically,
-                    root, make_number (size - 1));
+      if (WINDOW_LIVE_P (root))
+       {
+         wset_new_total (r, make_number (XFASTINT (r->total_lines) + size - 1));
+         value = make_number (size - 1);
+       }
+      else
+       value = call2 (Qwindow_resize_root_window_vertically,
+                      root, make_number (size - 1));
+
       if (INTEGERP (value) && window_resize_check (r, 0))
        {
          block_input ();





reply via email to

[Prev in Thread] Current Thread [Next in Thread]