mirror of
https://github.com/zsh-users/zsh
synced 2024-07-21 10:14:19 +00:00
21541: remove some warnings from ZLE_UNICODE_SUPPORT
This commit is contained in:
parent
a680faf050
commit
8665549030
|
@ -1,5 +1,10 @@
|
|||
2005-07-28 Peter Stephenson <pws@csr.com>
|
||||
|
||||
* 21541: Src/Zle/zle_hist.c, Src/Zle/zle_main.c,
|
||||
Src/Zle/zle_misc.c, Src/Zle/zle_params.c, Src/Zle/zle_tricky.c,
|
||||
Src/Zle/zle_utils.c: remove some warnings from
|
||||
ZLE_UNICODE_SUPPORT.
|
||||
|
||||
* unposted: Completion/Unix/Command/_perforce: updated for
|
||||
features of Perforce 2005.1 release.
|
||||
|
||||
|
|
|
@ -1068,7 +1068,8 @@ doisearch(char **args, int dir)
|
|||
rpt:
|
||||
if (!sbptr && previous_search_len) {
|
||||
if (previous_search_len > sibuf - FIRST_SEARCH_CHAR - 2) {
|
||||
ibuf = hrealloc(ibuf, sibuf, (sibuf + previous_search_len)
|
||||
ibuf = hrealloc((char *)ibuf, sibuf * ZLE_CHAR_SIZE,
|
||||
(sibuf + previous_search_len)
|
||||
* ZLE_CHAR_SIZE);
|
||||
sbuf = ibuf + FIRST_SEARCH_CHAR;
|
||||
sibuf += previous_search_len;
|
||||
|
@ -1096,7 +1097,7 @@ doisearch(char **args, int dir)
|
|||
} else if (cmd == Th(z_selfinsert)) {
|
||||
#ifdef ZLE_UNICODE_SUPPORT
|
||||
if (!lastchar_wide_valid)
|
||||
getfullcharrest(lastchar);
|
||||
getrestchar(lastchar);
|
||||
#else
|
||||
;
|
||||
#endif
|
||||
|
@ -1113,7 +1114,8 @@ doisearch(char **args, int dir)
|
|||
}
|
||||
set_isrch_spot(top_spot++, hl, pos, zlecs, sbptr, dir, nomatch);
|
||||
if (sbptr >= sibuf - FIRST_SEARCH_CHAR - 2) {
|
||||
ibuf = hrealloc(ibuf, sibuf, sibuf * 2 * ZLE_CHAR_SIZE);
|
||||
ibuf = hrealloc((char *)ibuf, sibuf * ZLE_CHAR_SIZE,
|
||||
sibuf * 2 * ZLE_CHAR_SIZE);
|
||||
sbuf = ibuf + FIRST_SEARCH_CHAR;
|
||||
sibuf *= 2;
|
||||
}
|
||||
|
@ -1298,9 +1300,10 @@ getvisrchstr(void)
|
|||
#endif
|
||||
}
|
||||
ins:
|
||||
if(sptr == ssbuf - 1) {
|
||||
char *newbuf = zhalloc(ssbuf *= 2);
|
||||
strcpy(newbuf, sbuf);
|
||||
if (sptr == ssbuf - 1) {
|
||||
ZLE_STRING_T newbuf =
|
||||
(ZLE_STRING_T) zhalloc((ssbuf *= 2) * ZLE_CHAR_SIZE);
|
||||
ZS_strcpy(newbuf, sbuf);
|
||||
statusline = sbuf = newbuf;
|
||||
}
|
||||
sbuf[sptr++] = LASTFULLCHAR;
|
||||
|
|
|
@ -938,7 +938,7 @@ zleread(char **lp, char **rp, int flags, int context)
|
|||
zlecontext = context;
|
||||
histline = curhist;
|
||||
undoing = 1;
|
||||
zleline = (unsigned char *)zalloc(((linesz = 256) + 2) * ZLE_CHAR_SIZE);
|
||||
zleline = (ZLE_STRING_T)zalloc(((linesz = 256) + 2) * ZLE_CHAR_SIZE);
|
||||
*zleline = ZWC('\0');
|
||||
virangeflag = lastcmd = done = zlecs = zlell = mark = 0;
|
||||
vichgflag = 0;
|
||||
|
@ -1518,7 +1518,8 @@ wordcharstrigger(void)
|
|||
{
|
||||
#ifdef ZLE_UNICODE_SUPPORT
|
||||
zrealloc(zle_wordchars, strlen(wordchars)*MB_CUR_MAX);
|
||||
mbsrtowcs(zle_wordchars, &wordchars, strlen(wordchars), NULL);
|
||||
mbsrtowcs(zle_wordchars, (const char **)&wordchars,
|
||||
strlen(wordchars), NULL);
|
||||
/* TODO: error handling here */
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -724,7 +724,7 @@ makequote(ZLE_STRING_T str, size_t *len)
|
|||
if (*l == ZWC('\''))
|
||||
qtct++;
|
||||
*len += 2 + qtct*3;
|
||||
l = ol = (char *)zhalloc(*len * ZLE_CHAR_SIZE);
|
||||
l = ol = (ZLE_STRING_T)zhalloc(*len * ZLE_CHAR_SIZE);
|
||||
*l++ = ZWC('\'');
|
||||
for (; str < end; str++)
|
||||
if (*str == ZWC('\'')) {
|
||||
|
|
|
@ -187,7 +187,7 @@ set_buffer(UNUSED(Param pm), char *x)
|
|||
static char *
|
||||
get_buffer(UNUSED(Param pm))
|
||||
{
|
||||
return (char *)zlelineasstring((char *)zleline, zlell, 0, NULL, NULL, 1);
|
||||
return (char *)zlelineasstring(zleline, zlell, 0, NULL, NULL, 1);
|
||||
}
|
||||
|
||||
/**/
|
||||
|
@ -264,7 +264,7 @@ get_lbuffer(UNUSED(Param pm))
|
|||
static void
|
||||
set_rbuffer(UNUSED(Param pm), char *x)
|
||||
{
|
||||
char *y;
|
||||
ZLE_STRING_T y;
|
||||
int len;
|
||||
|
||||
if (x && *x != ZWC('\0'))
|
||||
|
@ -610,7 +610,8 @@ static char *
|
|||
get_lsearch(UNUSED(Param pm))
|
||||
{
|
||||
if (previous_search_len)
|
||||
return metafy(previous_search, previous_search_len, META_HEAPDUP);
|
||||
return zlelineasstring(previous_search, previous_search_len, 0,
|
||||
NULL, NULL, 1);
|
||||
else
|
||||
return "";
|
||||
}
|
||||
|
|
|
@ -2332,9 +2332,19 @@ magicspace(char **args)
|
|||
bangq += 2)
|
||||
if (bangq[1] == '"' && (bangq == (char *)zleline || bangq[-1] != '\\'))
|
||||
break;
|
||||
#ifdef ZLE_UNICODE_SUPPORT
|
||||
/*
|
||||
* TODO: expansion and completion with Unicode are currently
|
||||
* fundamentally broken. Most of the code for this hasn't been
|
||||
* commented out, but crashing the shell just because you entered
|
||||
* a space seems to be worth guarding against.
|
||||
*/
|
||||
ret = selfinsert(args);
|
||||
#else
|
||||
if (!(ret = selfinsert(args)) &&
|
||||
(!bangq || bangq + 2 > (char *)zleline + zlecs))
|
||||
doexpandhist();
|
||||
#endif
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
|
|
@ -85,10 +85,23 @@ sizeline(int sz)
|
|||
|
||||
/**/
|
||||
mod_export void
|
||||
zleaddtoline(ZLE_CHAR_T chr)
|
||||
zleaddtoline(int chr)
|
||||
{
|
||||
spaceinline(1);
|
||||
#ifdef ZLE_UNICODE_SUPPORT
|
||||
/*
|
||||
* TODO: the main shell has as yet very little notion of multibyte
|
||||
* characters. Until this gets fixed we just have to assume
|
||||
* this is a complete character.
|
||||
*
|
||||
* Possibly we could get away with attempting to build up a
|
||||
* multibyte character here, storing partial characters between
|
||||
* calls.
|
||||
*/
|
||||
zleline[zlecs++] = (ZLE_CHAR_T)chr;
|
||||
#else
|
||||
zleline[zlecs++] = chr;
|
||||
#endif
|
||||
}
|
||||
|
||||
/*
|
||||
|
@ -188,7 +201,6 @@ stringaszleline(unsigned char *instr, int *outll, int *outsz)
|
|||
ZLE_STRING_T outstr;
|
||||
int ll, sz;
|
||||
#ifdef ZLE_UNICODE_SUPPORT
|
||||
int cll;
|
||||
mbstate_t ps;
|
||||
#endif
|
||||
|
||||
|
|
Loading…
Reference in a new issue