[BACK]Return to compile.c CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / src / lib / libterminfo

Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.

Diff for /src/lib/libterminfo/compile.c between version 1.8 and 1.8.2.1

version 1.8, 2012/06/03 23:19:10 version 1.8.2.1, 2013/06/23 06:21:08
Line 115  _ti_find_cap(TBUF *tbuf, char type, shor
Line 115  _ti_find_cap(TBUF *tbuf, char type, shor
                         break;                          break;
                 }                  }
         }          }
   
         errno = ESRCH;          errno = ESRCH;
         return NULL;          return NULL;
 }  }
Line 151  _ti_find_extra(TBUF *tbuf, const char *c
Line 151  _ti_find_extra(TBUF *tbuf, const char *c
                         break;                          break;
                 }                  }
         }          }
   
         errno = ESRCH;          errno = ESRCH;
         return NULL;          return NULL;
 }  }
Line 174  _ti_store_extra(TIC *tic, int wrn, char 
Line 174  _ti_store_extra(TIC *tic, int wrn, char 
                         return 0;                          return 0;
                 }                  }
         }          }
   
         l = strlen(id) + 1;          l = strlen(id) + 1;
         if (l > UINT16_T_MAX) {          if (l > UINT16_T_MAX) {
                 dowarn(flags, "%s: %s: cap name is too long", tic->name, id);                  dowarn(flags, "%s: %s: cap name is too long", tic->name, id);
                 return 0;                  return 0;
         }          }
   
         if (!_ti_grow_tbuf(&tic->extras,          if (!_ti_grow_tbuf(&tic->extras,
                 l + strl + (sizeof(uint16_t) * 2) + 1))                  l + strl + (sizeof(uint16_t) * 2) + 1))
                 return 0;                  return 0;
         le16enc(tic->extras.buf + tic->extras.bufpos, l);          le16enc(tic->extras.buf + tic->extras.bufpos, l);
         tic->extras.bufpos += sizeof(uint16_t);          tic->extras.bufpos += sizeof(uint16_t);
         memcpy(tic->extras.buf + tic->extras.bufpos, id, l);          memcpy(tic->extras.buf + tic->extras.bufpos, id, l);
         tic->extras.bufpos += l;          tic->extras.bufpos += l;
         tic->extras.buf[tic->extras.bufpos++] = type;          tic->extras.buf[tic->extras.bufpos++] = type;
         switch (type) {          switch (type) {
Line 237  _ti_flatten(uint8_t **buf, const TIC *ti
Line 237  _ti_flatten(uint8_t **buf, const TIC *ti
         *buf = malloc(buflen);          *buf = malloc(buflen);
         if (*buf == NULL)          if (*buf == NULL)
                 return -1;                  return -1;
   
         cap = *buf;          cap = *buf;
         *cap++ = 1;          *cap++ = 1;
         le16enc(cap, len);          le16enc(cap, len);
         cap += sizeof(uint16_t);          cap += sizeof(uint16_t);
         memcpy(cap, tic->name, len);          memcpy(cap, tic->name, len);
         cap += len;          cap += len;
   
         le16enc(cap, alen);          le16enc(cap, alen);
         cap += sizeof(uint16_t);          cap += sizeof(uint16_t);
         if (tic->alias != NULL) {          if (tic->alias != NULL) {
Line 269  _ti_flatten(uint8_t **buf, const TIC *ti
Line 269  _ti_flatten(uint8_t **buf, const TIC *ti
                 memcpy(cap, tic->flags.buf, tic->flags.bufpos);                  memcpy(cap, tic->flags.buf, tic->flags.bufpos);
                 cap += tic->flags.bufpos;                  cap += tic->flags.bufpos;
         }          }
   
         if (tic->nums.entries == 0) {          if (tic->nums.entries == 0) {
                 le16enc(cap, 0);                  le16enc(cap, 0);
                 cap += sizeof(uint16_t);                  cap += sizeof(uint16_t);
Line 281  _ti_flatten(uint8_t **buf, const TIC *ti
Line 281  _ti_flatten(uint8_t **buf, const TIC *ti
                 memcpy(cap, tic->nums.buf, tic->nums.bufpos);                  memcpy(cap, tic->nums.buf, tic->nums.bufpos);
                 cap += tic->nums.bufpos;                  cap += tic->nums.bufpos;
         }          }
   
         if (tic->strs.entries == 0) {          if (tic->strs.entries == 0) {
                 le16enc(cap, 0);                  le16enc(cap, 0);
                 cap += sizeof(uint16_t);                  cap += sizeof(uint16_t);
Line 293  _ti_flatten(uint8_t **buf, const TIC *ti
Line 293  _ti_flatten(uint8_t **buf, const TIC *ti
                 memcpy(cap, tic->strs.buf, tic->strs.bufpos);                  memcpy(cap, tic->strs.buf, tic->strs.bufpos);
                 cap += tic->strs.bufpos;                  cap += tic->strs.bufpos;
         }          }
   
         if (tic->extras.entries == 0) {          if (tic->extras.entries == 0) {
                 le16enc(cap, 0);                  le16enc(cap, 0);
                 cap += sizeof(uint16_t);                  cap += sizeof(uint16_t);
Line 315  encode_string(const char *term, const ch
Line 315  encode_string(const char *term, const ch
 {  {
         int slash, i, num;          int slash, i, num;
         char ch, *p, *s, last;          char ch, *p, *s, last;
   
         if (_ti_grow_tbuf(tbuf, strlen(str) + 1) == NULL)          if (_ti_grow_tbuf(tbuf, strlen(str) + 1) == NULL)
                 return -1;                  return -1;
         p = s = tbuf->buf + tbuf->bufpos;          p = s = tbuf->buf + tbuf->bufpos;
Line 392  encode_string(const char *term, const ch
Line 392  encode_string(const char *term, const ch
                         *p++ = '\t';                          *p++ = '\t';
                         break;                          break;
                 default:                  default:
   
                         /* We should warn here */                          /* We should warn here */
                 case '^':                  case '^':
                 case ',':                  case ',':
Line 454  _ti_compile(char *cap, int flags)
Line 453  _ti_compile(char *cap, int flags)
         TBUF buf;          TBUF buf;
         TIC *tic;          TIC *tic;
   
         _DIAGASSERT(cap != NULL);          _DIAGASSERT(cap != NULL);
   
         name = _ti_get_token(&cap, ',');          name = _ti_get_token(&cap, ',');
         if (name == NULL) {          if (name == NULL) {

Legend:
Removed from v.1.8  
changed lines
  Added in v.1.8.2.1

CVSweb <webmaster@jp.NetBSD.org>