]> ncurses.scripts.mit.edu Git - ncurses.git/blobdiff - ncurses/tinfo/MKcodes.awk
ncurses 5.7
[ncurses.git] / ncurses / tinfo / MKcodes.awk
index d3aff51eca8b0d9b446a6263f2f0a58e6b9b8e45..b9ba636e0ccdcd021a77991048dbb0b11396aa28 100644 (file)
@@ -1,5 +1,5 @@
 ##############################################################################
 ##############################################################################
-# Copyright (c) 1998-2006,2007 Free Software Foundation, Inc.                #
+# Copyright (c) 1998-2007,2008 Free Software Foundation, Inc.                #
 #                                                                            #
 # Permission is hereby granted, free of charge, to any person obtaining a    #
 # copy of this software and associated documentation files (the "Software"), #
 #                                                                            #
 # Permission is hereby granted, free of charge, to any person obtaining a    #
 # copy of this software and associated documentation files (the "Software"), #
@@ -25,7 +25,7 @@
 # use or other dealings in this Software without prior written               #
 # authorization.                                                             #
 ##############################################################################
 # use or other dealings in this Software without prior written               #
 # authorization.                                                             #
 ##############################################################################
-# $Id: MKcodes.awk,v 1.3 2007/09/01 20:50:01 tom Exp $
+# $Id: MKcodes.awk,v 1.5 2008/06/28 23:13:25 tom Exp $
 function large_item(value) {
        result = sprintf("%d,", offset);
        offset = offset + length(value) + 1;
 function large_item(value) {
        result = sprintf("%d,", offset);
        offset = offset + length(value) + 1;
@@ -138,6 +138,20 @@ END        {
                print  "FIX(numcodes)"
                print  "FIX(strcodes)"
                print  ""
                print  "FIX(numcodes)"
                print  "FIX(strcodes)"
                print  ""
+               print  "#define FREE_FIX(it) if (ptr_##it) { FreeAndNull(ptr_##it); }"
+               print  ""
+               print  "#if NO_LEAKS"
+               print  "NCURSES_EXPORT(void)"
+               print  "_nc_codes_leaks(void)"
+               print  "{"
+               if (bigstrings) {
+               print  "FREE_FIX(boolcodes)"
+               print  "FREE_FIX(numcodes)"
+               print  "FREE_FIX(strcodes)"
+               }
+               print  "}"
+               print  "#endif"
+               print  ""
                print  "#else"
                print  ""
                print  "#define DCL(it) NCURSES_EXPORT_VAR(IT) it[]"
                print  "#else"
                print  ""
                print  "#define DCL(it) NCURSES_EXPORT_VAR(IT) it[]"