diff options
author | Ulrich Drepper <drepper@redhat.com> | 1998-05-15 21:17:11 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 1998-05-15 21:17:11 +0000 |
commit | e3e0a182a7dd19c9e5186d5f5963f584b0eb373a (patch) | |
tree | a1eafeb7c1276d93d32680134e82af57406b8aba /iconvdata/iso-2022-kr.c | |
parent | bd687f7ab43028d3722984a6bcf48115bb82d9bb (diff) | |
download | glibc-e3e0a182a7dd19c9e5186d5f5963f584b0eb373a.zip glibc-e3e0a182a7dd19c9e5186d5f5963f584b0eb373a.tar.gz glibc-e3e0a182a7dd19c9e5186d5f5963f584b0eb373a.tar.bz2 |
Update.
1998-05-15 21:07 Ulrich Drepper <drepper@cygnus.com>
* iconv/gconv.h (gconv_step_data): Add new fields invocation_counter
and internal_use.
* iconv/gconv_open.c (__gconv_open): Initialize invocation_counter
and internal_use.
* iconv/skeleton.c: Increment invocation_counter.
* iconvdata/iso-2022-kr.c: When used in iconv() emit designator
sequence first.
* iconv/skeleton.c (FROM_DIRECTION): Completely embrace expression.
* iconvdata/iso-2022-jp.c: Likewise.
* iconvdata/iso646.c: Likewise.
* iconvdata/Makefile: Correct rpath definition for ISO-2022-KR.
Diffstat (limited to 'iconvdata/iso-2022-kr.c')
-rw-r--r-- | iconvdata/iso-2022-kr.c | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/iconvdata/iso-2022-kr.c b/iconvdata/iso-2022-kr.c index 69a1f5f..cb02cc9 100644 --- a/iconvdata/iso-2022-kr.c +++ b/iconvdata/iso-2022-kr.c @@ -44,7 +44,18 @@ #define MAX_NEEDED_TO 4 #define PREPARE_LOOP \ int save_set; \ - int set = data->statep->count; + int set = data->statep->count; \ + if (!FROM_DIRECTION && !data->internal_use && data->invocation_counter == 0)\ + { \ + /* Emit the designator sequence. */ \ + if (outptr + 4 > outend) \ + return GCONV_FULL_OUTPUT; \ + \ + *outptr++ = '\x1b'; \ + *outptr++ = '\x24'; \ + *outptr++ = '\x29'; \ + *outptr++ = '\x43'; \ + } #define EXTRA_LOOP_ARGS , set |