]> ncurses.scripts.mit.edu Git - ncurses.git/blobdiff - ncurses/tinfo/captoinfo.c
ncurses 6.2 - patch 20210227
[ncurses.git] / ncurses / tinfo / captoinfo.c
index de0133b386c6b50fbafdc7ad07a493ea84b7631f..926ac2ff49e953ebb5463db6f5e44a6e3f8ba484 100644 (file)
@@ -1,5 +1,5 @@
 /****************************************************************************
 /****************************************************************************
- * Copyright 2018-2019,2020 Thomas E. Dickey                                *
+ * Copyright 2018-2020,2021 Thomas E. Dickey                                *
  * Copyright 1998-2016,2017 Free Software Foundation, Inc.                  *
  *                                                                          *
  * Permission is hereby granted, free of charge, to any person obtaining a  *
  * Copyright 1998-2016,2017 Free Software Foundation, Inc.                  *
  *                                                                          *
  * Permission is hereby granted, free of charge, to any person obtaining a  *
@@ -98,7 +98,7 @@
 #include <ctype.h>
 #include <tic.h>
 
 #include <ctype.h>
 #include <tic.h>
 
-MODULE_ID("$Id: captoinfo.c,v 1.100 2020/07/08 21:39:54 tom Exp $")
+MODULE_ID("$Id: captoinfo.c,v 1.101 2021/02/28 01:05:07 tom Exp $")
 
 #if 0
 #define DEBUG_THIS(p) DEBUG(9, p)
 
 #if 0
 #define DEBUG_THIS(p) DEBUG(9, p)
@@ -634,7 +634,10 @@ _nc_infotocap(const char *cap GCC_UNUSED, const char *str, int const parameteriz
        int offset;
     } fixups[MAX_TC_FIXUPS];
 
        int offset;
     } fixups[MAX_TC_FIXUPS];
 
-    DEBUG_THIS(("_nc_infotocap params %d, %s", parameterized, str));
+    DEBUG_THIS(("_nc_infotocap %s params %d, %s",
+               _nc_strict_bsd ? "strict" : "loose",
+               parameterized,
+               _nc_visbuf(str)));
 
     /* we may have to move some trailing mandatory padding up front */
     padding = str + strlen(str) - 1;
 
     /* we may have to move some trailing mandatory padding up front */
     padding = str + strlen(str) - 1;
@@ -673,6 +676,11 @@ _nc_infotocap(const char *cap GCC_UNUSED, const char *str, int const parameteriz
                bufptr = save_char(bufptr, *str++);
                bufptr = save_char(bufptr, *str);
            }
                bufptr = save_char(bufptr, *str++);
                bufptr = save_char(bufptr, *str);
            }
+       } else if (str[0] == ':') {
+           bufptr = save_char(bufptr, '\\');
+           bufptr = save_char(bufptr, '0');
+           bufptr = save_char(bufptr, '7');
+           bufptr = save_char(bufptr, '2');
        } else if (str[0] == '\\') {
            if (str[1] == '\0' || (str + 1) == trimmed) {
                bufptr = save_string(bufptr, "\\134");
        } else if (str[0] == '\\') {
            if (str[1] == '\0' || (str + 1) == trimmed) {
                bufptr = save_string(bufptr, "\\134");