term->cfg is now a full copy of the Config structure, not a pointer;
[u/mdw/putty] / terminal.h
index 9628e07..72c8f87 100644 (file)
@@ -155,6 +155,9 @@ struct terminal_tag {
 
     short wordness[256];
 
+    /* Mask of attributes to pay attention to when painting. */
+    unsigned long attr_mask;
+
     wchar_t *paste_buffer;
     int paste_len, paste_pos, paste_hold;
     long last_paste;
@@ -163,6 +166,19 @@ struct terminal_tag {
     void *resize_ctx;
 
     void *ldisc;
+
+    void *frontend;
+
+    void *logctx;
+
+    /*
+     * We maintain a full _copy_ of a Config structure here, not
+     * merely a pointer to it. That way, when we're passed a new
+     * one for reconfiguration, we can check the differences and
+     * adjust the _current_ setting of (e.g.) auto wrap mode rather
+     * than only the default.
+     */
+    Config cfg;
 };
 
 #define in_utf(term) ((term)->utf || line_codepage==CP_UTF8)