unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#39724: 26.3; Commit 44298ea6aa006ed227e539b02279bd3fc11fd2a6 breaks font display on macOS
@ 2020-02-21 21:45 John Wiegley
  2020-02-21 22:50 ` Alan Third
  0 siblings, 1 reply; 9+ messages in thread
From: John Wiegley @ 2020-02-21 21:45 UTC (permalink / raw)
  To: 39724; +Cc: Alan Third

I noticed recently that no text was displaying in my Emacs 27 windows. As if
everything were black and black, except that changing the font and background
colors did not help.

It took two days of rebuilding, but I've isolated this as the breaking commit:

commit 44298ea6aa006ed227e539b02279bd3fc11fd2a6
Author: Alan Third <alan@idiocy.org>
Date:   Sat Feb 1 21:17:29 2020 +0000

    Use CGImage instead of NSBitmapImageRep (bug#32932)

    * src/nsterm.m (ns_update_end):
    (ns_clear_frame): Remove forced draws.
    (ns_draw_fringe_bitmap):
    (ns_dumpglyphs_image): No longer need to invert images as the context
    is already flipped.
    ([EmacsView updateFrameSize:]):
    ([EmacsView initFrameFromEmacs:]): Use new function.
    ([EmacsView createDrawingBuffer]): Replaces createDrawingBufferWithRect:.
    ([EmacsView focusOnDrawingBuffer]): Set CGImage context.
    ([EmacsView windowDidChangeBackingProperties:]): Use new function.
    ([EmacsView copyRect:to:]): Copy using CGImages.
    ([EmacsView wantsUpdateLayer]):
    ([EmacsView updateLayer]): New Functions.
    ([EmacsView drawRect:]): We no longer do anything special here for
    Cocoa.
    ([EmacsView windowDidChangeBackingProperties:]): Fix indentation and
    add NSTRACE.

Anything prior to this works as expected. From this commit forward, all
windows are black on black.

-- 
John Wiegley                  GPG fingerprint = 4710 CF98 AF9B 327B B80F
http://newartisans.com                          60E1 46C4 BD1A 7AC1 4BA2





^ permalink raw reply	[flat|nested] 9+ messages in thread

* bug#39724: 26.3; Commit 44298ea6aa006ed227e539b02279bd3fc11fd2a6 breaks font display on macOS
  2020-02-21 21:45 bug#39724: 26.3; Commit 44298ea6aa006ed227e539b02279bd3fc11fd2a6 breaks font display on macOS John Wiegley
@ 2020-02-21 22:50 ` Alan Third
  2020-02-23 20:59   ` John Wiegley
  0 siblings, 1 reply; 9+ messages in thread
From: Alan Third @ 2020-02-21 22:50 UTC (permalink / raw)
  To: 39724, eliz

On Fri, Feb 21, 2020 at 01:45:08PM -0800, John Wiegley wrote:
> I noticed recently that no text was displaying in my Emacs 27 windows. As if
> everything were black and black, except that changing the font and background
> colors did not help.
> 
> It took two days of rebuilding, but I've isolated this as the breaking commit:
> 
> commit 44298ea6aa006ed227e539b02279bd3fc11fd2a6
> Author: Alan Third <alan@idiocy.org>
> Date:   Sat Feb 1 21:17:29 2020 +0000
> 
>     Use CGImage instead of NSBitmapImageRep (bug#32932)
> 
>     * src/nsterm.m (ns_update_end):
>     (ns_clear_frame): Remove forced draws.
>     (ns_draw_fringe_bitmap):
>     (ns_dumpglyphs_image): No longer need to invert images as the context
>     is already flipped.
>     ([EmacsView updateFrameSize:]):
>     ([EmacsView initFrameFromEmacs:]): Use new function.
>     ([EmacsView createDrawingBuffer]): Replaces createDrawingBufferWithRect:.
>     ([EmacsView focusOnDrawingBuffer]): Set CGImage context.
>     ([EmacsView windowDidChangeBackingProperties:]): Use new function.
>     ([EmacsView copyRect:to:]): Copy using CGImages.
>     ([EmacsView wantsUpdateLayer]):
>     ([EmacsView updateLayer]): New Functions.
>     ([EmacsView drawRect:]): We no longer do anything special here for
>     Cocoa.
>     ([EmacsView windowDidChangeBackingProperties:]): Fix indentation and
>     add NSTRACE.

Hi John, that commit isn’t in the emacs-27 branch, or if it is
something has gone terribly wrong.

> Anything prior to this works as expected. From this commit forward, all
> windows are black on black.

Zhang Haijun has reported something similar on the master branch. The
compile logs look as though there’s something wrong with his build
environment. What version of macOS are you using? Are there any errors
or warnings when you build it?
-- 
Alan Third





^ permalink raw reply	[flat|nested] 9+ messages in thread

* bug#39724: 26.3; Commit 44298ea6aa006ed227e539b02279bd3fc11fd2a6 breaks font display on macOS
  2020-02-21 22:50 ` Alan Third
@ 2020-02-23 20:59   ` John Wiegley
  2020-02-24  9:45     ` Alan Third
  0 siblings, 1 reply; 9+ messages in thread
From: John Wiegley @ 2020-02-23 20:59 UTC (permalink / raw)
  To: Alan Third; +Cc: 39724

>>>>> "AT" == Alan Third <alan@idiocy.org> writes:

AT> Hi John, that commit isn’t in the emacs-27 branch, or if it is something
AT> has gone terribly wrong.

>> Anything prior to this works as expected. From this commit forward, all
>> windows are black on black.

You're right, I meant the master branch.

AT> Zhang Haijun has reported something similar on the master branch. The
AT> compile logs look as though there’s something wrong with his build
AT> environment. What version of macOS are you using? Are there any errors or
AT> warnings when you build it?

I'm using Catalina, let me capture the build log for you...

On a maybe related note, I now find that ERC is unusably slow: I can type
faster than Emacs can display the characters. Given that I've changed nothing
about my setup in past months, this could be related to other macOS changes.

-- 
John Wiegley                  GPG fingerprint = 4710 CF98 AF9B 327B B80F
http://newartisans.com                          60E1 46C4 BD1A 7AC1 4BA2





^ permalink raw reply	[flat|nested] 9+ messages in thread

* bug#39724: 26.3; Commit 44298ea6aa006ed227e539b02279bd3fc11fd2a6 breaks font display on macOS
  2020-02-23 20:59   ` John Wiegley
@ 2020-02-24  9:45     ` Alan Third
  2020-02-24 17:56       ` John Wiegley
  0 siblings, 1 reply; 9+ messages in thread
From: Alan Third @ 2020-02-24  9:45 UTC (permalink / raw)
  To: 39724, johnw

On 23 February 2020 20:59:30 GMT, John Wiegley <johnw@gnu.org> wrote:
>>>>>> "AT" == Alan Third <alan@idiocy.org> writes:
>
>AT> Zhang Haijun has reported something similar on the master branch.
>The
>AT> compile logs look as though there’s something wrong with his build
>AT> environment. What version of macOS are you using? Are there any
>errors or
>AT> warnings when you build it?
>
>I'm using Catalina, let me capture the build log for you...


Are you still using Nix to build Emacs? As I recall it used to use the 10.10 build environment even on more modern versions of macOS, so this could still be an incompatibility between the new drawing code and older versions of macOS/XCode.

-- 
Alan Third





^ permalink raw reply	[flat|nested] 9+ messages in thread

* bug#39724: 26.3; Commit 44298ea6aa006ed227e539b02279bd3fc11fd2a6 breaks font display on macOS
  2020-02-24  9:45     ` Alan Third
@ 2020-02-24 17:56       ` John Wiegley
  2020-02-25 21:06         ` Alan Third
  0 siblings, 1 reply; 9+ messages in thread
From: John Wiegley @ 2020-02-24 17:56 UTC (permalink / raw)
  To: Alan Third; +Cc: 39724

>>>>> "AT" == Alan Third <alan@idiocy.org> writes:

AT> Are you still using Nix to build Emacs? As I recall it used to use the
AT> 10.10 build environment even on more modern versions of macOS, so this
AT> could still be an incompatibility between the new drawing code and older
AT> versions of macOS/XCode.

I am using Nix, but it passes this:

    -DMAC_OS_X_VERSION_MAX_ALLOWED=101200

Which should be recent enough, I'd think.

I also need to track down the slowness that I'm seeing, to see which commit
introduced that. It will take me a few days to gather all of this information,
given how slow the test cycles are.

-- 
John Wiegley                  GPG fingerprint = 4710 CF98 AF9B 327B B80F
http://newartisans.com                          60E1 46C4 BD1A 7AC1 4BA2





^ permalink raw reply	[flat|nested] 9+ messages in thread

* bug#39724: 26.3; Commit 44298ea6aa006ed227e539b02279bd3fc11fd2a6 breaks font display on macOS
  2020-02-24 17:56       ` John Wiegley
@ 2020-02-25 21:06         ` Alan Third
  2020-03-05 17:22           ` Alan Third
  0 siblings, 1 reply; 9+ messages in thread
From: Alan Third @ 2020-02-25 21:06 UTC (permalink / raw)
  To: John Wiegley; +Cc: 39724

On Mon, Feb 24, 2020 at 09:56:04AM -0800, John Wiegley wrote:
> >>>>> "AT" == Alan Third <alan@idiocy.org> writes:
> 
> AT> Are you still using Nix to build Emacs? As I recall it used to use the
> AT> 10.10 build environment even on more modern versions of macOS, so this
> AT> could still be an incompatibility between the new drawing code and older
> AT> versions of macOS/XCode.
> 
> I am using Nix, but it passes this:
> 
>     -DMAC_OS_X_VERSION_MAX_ALLOWED=101200
> 
> Which should be recent enough, I'd think.
> 
> I also need to track down the slowness that I'm seeing, to see which commit
> introduced that. It will take me a few days to gather all of this information,
> given how slow the test cycles are.

Could you try the below patch to see if that sorts the background issue?

modified   src/nsterm.m
@@ -8240,6 +8240,8 @@ - (void)createDrawingBuffer
   /* This fixes the scale to match the backing scale factor, and flips the image.  */
   CGContextTranslateCTM(drawingBuffer, 0, NSHeight (frame) * scale);
   CGContextScaleCTM(drawingBuffer, scale, -scale);
+
+  ns_clear_frame (emacsframe);
 }
 
 
@@ -8269,7 +8271,6 @@ - (void)windowDidChangeBackingProperties:(NSNotification *)notification
     {
       NSRect frame = [self frame];
       [self createDrawingBuffer];
-      ns_clear_frame (emacsframe);
       expose_frame (emacsframe, 0, 0, NSWidth (frame), NSHeight (frame));
     }
 }


I don’t know if I’ve just missed it (I’ve been messing with my email
set‐up recently) but I’ve not seen the build log you promised.

-- 
Alan Third





^ permalink raw reply	[flat|nested] 9+ messages in thread

* bug#39724: 26.3; Commit 44298ea6aa006ed227e539b02279bd3fc11fd2a6 breaks font display on macOS
  2020-02-25 21:06         ` Alan Third
@ 2020-03-05 17:22           ` Alan Third
  2020-08-24  8:36             ` Stefan Kangas
  0 siblings, 1 reply; 9+ messages in thread
From: Alan Third @ 2020-03-05 17:22 UTC (permalink / raw)
  To: John Wiegley; +Cc: 39724

On Tue, Feb 25, 2020 at 10:06:33PM +0100, Alan Third wrote:
> On Mon, Feb 24, 2020 at 09:56:04AM -0800, John Wiegley wrote:
> > >>>>> "AT" == Alan Third <alan@idiocy.org> writes:
> > 
> > AT> Are you still using Nix to build Emacs? As I recall it used to use the
> > AT> 10.10 build environment even on more modern versions of macOS, so this
> > AT> could still be an incompatibility between the new drawing code and older
> > AT> versions of macOS/XCode.
> > 
> > I am using Nix, but it passes this:
> > 
> >     -DMAC_OS_X_VERSION_MAX_ALLOWED=101200
> > 
> > Which should be recent enough, I'd think.
> > 
> > I also need to track down the slowness that I'm seeing, to see which commit
> > introduced that. It will take me a few days to gather all of this information,
> > given how slow the test cycles are.
> 
> Could you try the below patch to see if that sorts the background issue?
> 
> modified   src/nsterm.m
> @@ -8240,6 +8240,8 @@ - (void)createDrawingBuffer
>    /* This fixes the scale to match the backing scale factor, and flips the image.  */
>    CGContextTranslateCTM(drawingBuffer, 0, NSHeight (frame) * scale);
>    CGContextScaleCTM(drawingBuffer, scale, -scale);
> +
> +  ns_clear_frame (emacsframe);
>  }
>  
>  
> @@ -8269,7 +8271,6 @@ - (void)windowDidChangeBackingProperties:(NSNotification *)notification
>      {
>        NSRect frame = [self frame];
>        [self createDrawingBuffer];
> -      ns_clear_frame (emacsframe);
>        expose_frame (emacsframe, 0, 0, NSWidth (frame), NSHeight (frame));
>      }
>  }
> 
> 
> I don’t know if I’ve just missed it (I’ve been messing with my email
> set‐up recently) but I’ve not seen the build log you promised.
> 

Hi John, I don’t know if you tried the above patch, but can you please
try building the master branch again? I fixed an issue last night that
may be the same as your problem. I’m not sure because it all depends
on the build environment and what versions of Cocoa are available and
so on, and I think Nix may confuse matters.

-- 
Alan Third





^ permalink raw reply	[flat|nested] 9+ messages in thread

* bug#39724: 26.3; Commit 44298ea6aa006ed227e539b02279bd3fc11fd2a6 breaks font display on macOS
  2020-03-05 17:22           ` Alan Third
@ 2020-08-24  8:36             ` Stefan Kangas
  2020-10-01 12:38               ` Stefan Kangas
  0 siblings, 1 reply; 9+ messages in thread
From: Stefan Kangas @ 2020-08-24  8:36 UTC (permalink / raw)
  To: Alan Third; +Cc: John Wiegley, 39724

Alan Third <alan@idiocy.org> writes:

> On Tue, Feb 25, 2020 at 10:06:33PM +0100, Alan Third wrote:
>> On Mon, Feb 24, 2020 at 09:56:04AM -0800, John Wiegley wrote:
>> > >>>>> "AT" == Alan Third <alan@idiocy.org> writes:
>> >
>> > AT> Are you still using Nix to build Emacs? As I recall it used to use the
>> > AT> 10.10 build environment even on more modern versions of macOS, so this
>> > AT> could still be an incompatibility between the new drawing code and older
>> > AT> versions of macOS/XCode.
>> >
>> > I am using Nix, but it passes this:
>> >
>> >     -DMAC_OS_X_VERSION_MAX_ALLOWED=101200
>> >
>> > Which should be recent enough, I'd think.
>> >
>> > I also need to track down the slowness that I'm seeing, to see which commit
>> > introduced that. It will take me a few days to gather all of this information,
>> > given how slow the test cycles are.
>>
>> Could you try the below patch to see if that sorts the background issue?
>>
>> modified   src/nsterm.m
>> @@ -8240,6 +8240,8 @@ - (void)createDrawingBuffer
>>    /* This fixes the scale to match the backing scale factor, and flips the image.  */
>>    CGContextTranslateCTM(drawingBuffer, 0, NSHeight (frame) * scale);
>>    CGContextScaleCTM(drawingBuffer, scale, -scale);
>> +
>> +  ns_clear_frame (emacsframe);
>>  }
>>
>>
>> @@ -8269,7 +8271,6 @@ - (void)windowDidChangeBackingProperties:(NSNotification *)notification
>>      {
>>        NSRect frame = [self frame];
>>        [self createDrawingBuffer];
>> -      ns_clear_frame (emacsframe);
>>        expose_frame (emacsframe, 0, 0, NSWidth (frame), NSHeight (frame));
>>      }
>>  }
>>
>>
>> I don’t know if I’ve just missed it (I’ve been messing with my email
>> set‐up recently) but I’ve not seen the build log you promised.
>>
>
> Hi John, I don’t know if you tried the above patch, but can you please
> try building the master branch again? I fixed an issue last night that
> may be the same as your problem. I’m not sure because it all depends
> on the build environment and what versions of Cocoa are available and
> so on, and I think Nix may confuse matters.

That was 6 months ago.  Any updates here?

If I don't hear back from you within a couple of weeks, I'll just
assume this has been fixed and close this bug.

Best regards,
Stefan Kangas





^ permalink raw reply	[flat|nested] 9+ messages in thread

* bug#39724: 26.3; Commit 44298ea6aa006ed227e539b02279bd3fc11fd2a6 breaks font display on macOS
  2020-08-24  8:36             ` Stefan Kangas
@ 2020-10-01 12:38               ` Stefan Kangas
  0 siblings, 0 replies; 9+ messages in thread
From: Stefan Kangas @ 2020-10-01 12:38 UTC (permalink / raw)
  To: Alan Third; +Cc: John Wiegley, 39724-done

Stefan Kangas <stefan@marxist.se> writes:

>> Hi John, I don’t know if you tried the above patch, but can you please
>> try building the master branch again? I fixed an issue last night that
>> may be the same as your problem. I’m not sure because it all depends
>> on the build environment and what versions of Cocoa are available and
>> so on, and I think Nix may confuse matters.
>
> That was 6 months ago.  Any updates here?
>
> If I don't hear back from you within a couple of weeks, I'll just
> assume this has been fixed and close this bug.

More information was requested, but none was given within 5 weeks, so
I'll just assume that the above fixed the issue.  I'm therefore closing
this bug now.

If this is still an issue, please reply to this email (use "Reply to
all" in your email client) and we can reopen the bug report.

Best regards,
Stefan Kangas





^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2020-10-01 12:38 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-02-21 21:45 bug#39724: 26.3; Commit 44298ea6aa006ed227e539b02279bd3fc11fd2a6 breaks font display on macOS John Wiegley
2020-02-21 22:50 ` Alan Third
2020-02-23 20:59   ` John Wiegley
2020-02-24  9:45     ` Alan Third
2020-02-24 17:56       ` John Wiegley
2020-02-25 21:06         ` Alan Third
2020-03-05 17:22           ` Alan Third
2020-08-24  8:36             ` Stefan Kangas
2020-10-01 12:38               ` Stefan Kangas

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).