summaryrefslogtreecommitdiff
path: root/iconvdata/iso-2022-kr.c
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>1998-05-15 21:17:11 +0000
committerUlrich Drepper <drepper@redhat.com>1998-05-15 21:17:11 +0000
commite3e0a182a7dd19c9e5186d5f5963f584b0eb373a (patch)
treea1eafeb7c1276d93d32680134e82af57406b8aba /iconvdata/iso-2022-kr.c
parentbd687f7ab43028d3722984a6bcf48115bb82d9bb (diff)
downloadglibc-e3e0a182a7dd19c9e5186d5f5963f584b0eb373a.tar.gz
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.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/iconvdata/iso-2022-kr.c b/iconvdata/iso-2022-kr.c
index 69a1f5f89f..cb02cc9bf2 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