mirror of
https://sourceware.org/git/glibc.git
synced 2025-08-05 19:35:52 +03:00
Update.
1999-11-25 Ulrich Drepper <drepper@cygnus.com> * iconv/gconv.c (__gconv): Always initialize cd->__data[last_step].__outbuf and cd->__data[last_step].__outbufend. * iconvdata/iso-2022-kr.c (EMIT_SHIFT_TO_INIT): Update number of written bytes. * iconvdata/iso-2022-jp.c: Likewise.
This commit is contained in:
@@ -1,3 +1,12 @@
|
|||||||
|
1999-11-25 Ulrich Drepper <drepper@cygnus.com>
|
||||||
|
|
||||||
|
* iconv/gconv.c (__gconv): Always initialize
|
||||||
|
cd->__data[last_step].__outbuf and cd->__data[last_step].__outbufend.
|
||||||
|
|
||||||
|
* iconvdata/iso-2022-kr.c (EMIT_SHIFT_TO_INIT): Update number of
|
||||||
|
written bytes.
|
||||||
|
* iconvdata/iso-2022-jp.c: Likewise.
|
||||||
|
|
||||||
1999-11-25 H.J. Lu <hjl@gnu.org>
|
1999-11-25 H.J. Lu <hjl@gnu.org>
|
||||||
|
|
||||||
* stdlib/exit.c (exit): Run funtions only if
|
* stdlib/exit.c (exit): Run funtions only if
|
||||||
|
@@ -39,6 +39,9 @@ __gconv (__gconv_t cd, const unsigned char **inbuf,
|
|||||||
assert (converted != NULL);
|
assert (converted != NULL);
|
||||||
*converted = 0;
|
*converted = 0;
|
||||||
|
|
||||||
|
cd->__data[last_step].__outbuf = *outbuf;
|
||||||
|
cd->__data[last_step].__outbufend = outbufend;
|
||||||
|
|
||||||
if (inbuf == NULL || *inbuf == NULL)
|
if (inbuf == NULL || *inbuf == NULL)
|
||||||
/* We just flush. */
|
/* We just flush. */
|
||||||
result = DL_CALL_FCT (cd->__steps->__fct,
|
result = DL_CALL_FCT (cd->__steps->__fct,
|
||||||
@@ -49,8 +52,6 @@ __gconv (__gconv_t cd, const unsigned char **inbuf,
|
|||||||
const unsigned char *last_start;
|
const unsigned char *last_start;
|
||||||
|
|
||||||
assert (outbuf != NULL && *outbuf != NULL);
|
assert (outbuf != NULL && *outbuf != NULL);
|
||||||
cd->__data[last_step].__outbuf = *outbuf;
|
|
||||||
cd->__data[last_step].__outbufend = outbufend;
|
|
||||||
|
|
||||||
do
|
do
|
||||||
{
|
{
|
||||||
|
@@ -212,6 +212,8 @@ gconv_end (struct __gconv_step *data)
|
|||||||
*outbuf++ = ESC; \
|
*outbuf++ = ESC; \
|
||||||
*outbuf++ = '('; \
|
*outbuf++ = '('; \
|
||||||
*outbuf++ = 'B'; \
|
*outbuf++ = 'B'; \
|
||||||
|
if (data->__is_last) \
|
||||||
|
*written += 3; \
|
||||||
data->__outbuf = outbuf; \
|
data->__outbuf = outbuf; \
|
||||||
/* Note that this also clears the G2 designation. */ \
|
/* Note that this also clears the G2 designation. */ \
|
||||||
data->__statep->count = ASCII_set; \
|
data->__statep->count = ASCII_set; \
|
||||||
|
@@ -92,6 +92,8 @@ enum
|
|||||||
{ \
|
{ \
|
||||||
/* Write out the shift sequence. */ \
|
/* Write out the shift sequence. */ \
|
||||||
*outbuf++ = SI; \
|
*outbuf++ = SI; \
|
||||||
|
if (data->__is_last) \
|
||||||
|
*written += 1; \
|
||||||
data->__outbuf = outbuf; \
|
data->__outbuf = outbuf; \
|
||||||
data->__statep->count = ASCII_set; \
|
data->__statep->count = ASCII_set; \
|
||||||
} \
|
} \
|
||||||
|
Reference in New Issue
Block a user