unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Andy Moreton <andrewjmoreton@gmail.com>
To: emacs-devel@gnu.org
Subject: Re: Replace XChar2b with unsigned in all font backends
Date: Mon, 20 May 2019 19:29:34 +0100	[thread overview]
Message-ID: <vz17eal0yk1.fsf@gmail.com> (raw)
In-Reply-To: 87v9y5uh63.fsf@gmail.com

On Mon 20 May 2019, Alex Gramiak wrote:

> Andy Moreton <andrewjmoreton@gmail.com> writes:
>
>> Confirmed. This patch replaces use of XChar2b (a 16bit type) with
>> unsigned (usually 32bit) which seems wrong.
>>
>>     AndyM
>
> I originally used unsigned short for this patch, but Eli[1] nudged me
> towards unsigned. Unsigned fits better with other parts of the font
> system, e.g., *encode_char returns unsigned, and *text_extents takes a
> pointer to unsigned.
>
> [1] https://lists.gnu.org/archive/html/emacs-devel/2019-05/msg00457.html

Yes, but Eli was concerned with efficiency, but correctness comes first.
If you are calling APIs that expect a pointer to an array of 16bit
values, then an array of 32bit values will not suffice.

Many of the comments around this code talk of 2-byte values, so
changing the code to use 4-byte values is surprising to the reader.

The changes also removed the explicit packing/unpacking of 16bit values,
which may give rise to endianness issues on some systems.

Please revert this patch to fix the build on master, and then revisit
these changes after that.

    AndyM




  reply	other threads:[~2019-05-20 18:29 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-05-20  8:26 Replace XChar2b with unsigned in all font backends martin rudalics
2019-05-20 12:05 ` Andy Moreton
2019-05-20 18:14   ` Alex Gramiak
2019-05-20 18:29     ` Andy Moreton [this message]
2019-05-20 19:20       ` Eli Zaretskii
2019-05-20 22:52         ` Andy Moreton
2019-05-21  8:00           ` Eli Zaretskii
2019-05-21 11:50             ` Andy Moreton
2019-05-21 12:38               ` Eli Zaretskii
2019-05-20 19:34       ` Alex Gramiak
2019-05-20 18:07 ` Alex Gramiak
2019-05-21  7:33   ` martin rudalics
2019-05-21 21:32     ` Alex Gramiak
2019-05-21 23:04       ` Andy Moreton
2019-05-22  8:30       ` martin rudalics
2019-05-21 11:47   ` Andy Moreton

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=vz17eal0yk1.fsf@gmail.com \
    --to=andrewjmoreton@gmail.com \
    --cc=emacs-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).