diff options
| author | Jim Blandy | 1993-05-25 14:01:54 +0000 |
|---|---|---|
| committer | Jim Blandy | 1993-05-25 14:01:54 +0000 |
| commit | e5c8436a174dbc531a2c42790f4522def7df546f (patch) | |
| tree | 7d45e0585694938ec47d2a1f6d4ec585d0204b6a /src | |
| parent | fbce8654197f01e5e2ca03a6cfad6199e010e05f (diff) | |
| download | emacs-e5c8436a174dbc531a2c42790f4522def7df546f.tar.gz emacs-e5c8436a174dbc531a2c42790f4522def7df546f.zip | |
* dispextern.h (struct face): New field - `copy', to help us with
resource allocation.
* xfaces.c (free_frame_faces): Do free the first two faces; don't
free anything from a face that's a copy.
(intern_frame_face): Mark every face we intern as a copy; its
resources are actually a combination of the real faces.
(Fset_face_attribute_internal): No need to check if we're trying
to free one of the frame's GC's; they never enter into the
picture.
Diffstat (limited to 'src')
| -rw-r--r-- | src/dispextern.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/dispextern.h b/src/dispextern.h index d793abe9cd4..dfdae70b3d0 100644 --- a/src/dispextern.h +++ b/src/dispextern.h | |||
| @@ -54,6 +54,15 @@ struct face | |||
| 54 | 54 | ||
| 55 | /* Whether or not to underline text in this face. */ | 55 | /* Whether or not to underline text in this face. */ |
| 56 | char underline; | 56 | char underline; |
| 57 | |||
| 58 | /* Does this face own its resources? (color, font, etcetera) | ||
| 59 | If this is a face which we computed by combining other faces, | ||
| 60 | then this is true, and we shouldn't free any of the resources | ||
| 61 | it refers to; the faces from which it was constructed own it. | ||
| 62 | On the other hand, if this is a face the user created and | ||
| 63 | filled in directly, then this is false, and we should free the | ||
| 64 | resources when we free it. */ | ||
| 65 | char copy; | ||
| 57 | }; | 66 | }; |
| 58 | 67 | ||
| 59 | /* Let's stop using this and get rid of it. */ | 68 | /* Let's stop using this and get rid of it. */ |