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

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

bug#9498: "Not an in-range integer,..." when using Synergy


From: Chong Yidong
Subject: bug#9498: "Not an in-range integer,..." when using Synergy
Date: Thu, 15 Sep 2011 21:31:20 -0400
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux)

Thanks.

The culprit seems to be Paul Eggert's 2011-08-26 change (Bug#9196) to
lisp_data_to_selection_data, which forces numeric values to be saved to
the X selection data member with a maximum allowed value of X_LONG_MAX
== 2147483647.  This breaks for timestamps like 3345671365.

The patch below probably fixes the error for this specific bug, but I
will leave it up to Paul to figure out if it's the right fix.

Paul, please review your change.  Thanks.


=== modified file 'src/xselect.c'
*** src/xselect.c       2011-09-14 15:47:21 +0000
--- src/xselect.c       2011-09-16 01:28:22 +0000
***************
*** 1787,1793 ****
        *format_ret = 32;
        *size_ret = 1;
        (*data_ret) [sizeof (long)] = 0;
!       (*(long **) data_ret) [0] = cons_to_signed (obj, X_LONG_MIN, 
X_LONG_MAX);
        if (NILP (type)) type = QINTEGER;
      }
    else if (VECTORP (obj))
--- 1787,1793 ----
        *format_ret = 32;
        *size_ret = 1;
        (*data_ret) [sizeof (long)] = 0;
!       (*(long **) data_ret) [0] = cons_to_signed (obj, LONG_MIN, LONG_MAX);
        if (NILP (type)) type = QINTEGER;
      }
    else if (VECTORP (obj))






reply via email to

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