/****************************************************************************
- * Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. *
+ * Copyright (c) 1998-2013,2014 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 *
#include <tic.h>
-MODULE_ID("$Id: read_entry.c,v 1.124 2013/07/13 20:06:43 tom Exp $")
+MODULE_ID("$Id: read_entry.c,v 1.127 2014/03/08 22:07:31 Xin.Li Exp $")
#define TYPE_CALLOC(type,elts) typeCalloc(type, (unsigned)(elts))
#define even_boundary(value) \
if ((value) % 2 != 0) Read(buf, 1)
+#endif
+
+NCURSES_EXPORT(void)
+_nc_init_termtype(TERMTYPE *const tp)
+{
+ unsigned i;
+
+#if NCURSES_XNAMES
+ tp->num_Booleans = BOOLCOUNT;
+ tp->num_Numbers = NUMCOUNT;
+ tp->num_Strings = STRCOUNT;
+ tp->ext_Booleans = 0;
+ tp->ext_Numbers = 0;
+ tp->ext_Strings = 0;
+#endif
+ if (tp->Booleans == 0)
+ TYPE_MALLOC(NCURSES_SBOOL, BOOLCOUNT, tp->Booleans);
+ if (tp->Numbers == 0)
+ TYPE_MALLOC(short, NUMCOUNT, tp->Numbers);
+ if (tp->Strings == 0)
+ TYPE_MALLOC(char *, STRCOUNT, tp->Strings);
+ for_each_boolean(i, tp)
+ tp->Booleans[i] = FALSE;
+
+ for_each_number(i, tp)
+ tp->Numbers[i] = ABSENT_NUMERIC;
+
+ for_each_string(i, tp)
+ tp->Strings[i] = ABSENT_STRING;
+}
+
+#if NCURSES_USE_DATABASE
/*
* Return TGETENT_YES if read, TGETENT_NO if not found or garbled.
*/
{
static const char suffix[] = DBM_SUFFIX;
- unsigned lens = sizeof(suffix) - 1;
- unsigned size = strlen(path);
- unsigned test = lens + size;
+ size_t lens = sizeof(suffix) - 1;
+ size_t size = strlen(path);
+ size_t test = lens + size;
bool result = FALSE;
if (test < limit) {
* (source/binary) by checking the lengths.
*/
while (_nc_db_get(capdbp, &key, &data) == 0) {
- int used = data.size - 1;
+ int used = (int) data.size - 1;
char *have = (char *) data.data;
if (*have++ == 0) {