mirror of
https://sourceware.org/git/glibc.git
synced 2025-08-05 19:35:52 +03:00
Update.
2000-08-25 Ulrich Drepper <drepper@redhat.com> * locales/i18n (default_missing): Change back to only U003F.
This commit is contained in:
@@ -117,7 +117,7 @@ __gconv_transliterate (struct __gconv_step *step,
|
|||||||
(step, step_data, &toinptr,
|
(step, step_data, &toinptr,
|
||||||
(const unsigned char *) &to_tbl[idx2 + len],
|
(const unsigned char *) &to_tbl[idx2 + len],
|
||||||
(unsigned char **) outbufstart,
|
(unsigned char **) outbufstart,
|
||||||
irreversible, 0, 0));
|
NULL, 0, 0));
|
||||||
if (res != __GCONV_ILLEGAL_INPUT)
|
if (res != __GCONV_ILLEGAL_INPUT)
|
||||||
{
|
{
|
||||||
/* If the conversion succeeds we have to increment the
|
/* If the conversion succeeds we have to increment the
|
||||||
@@ -200,7 +200,7 @@ __gconv_transliterate (struct __gconv_step *step,
|
|||||||
(step, step_data, &toinptr,
|
(step, step_data, &toinptr,
|
||||||
(const unsigned char *) (default_missing + len),
|
(const unsigned char *) (default_missing + len),
|
||||||
(unsigned char **) outbufstart,
|
(unsigned char **) outbufstart,
|
||||||
irreversible, 0, 0));
|
NULL, 0, 0));
|
||||||
|
|
||||||
if (res != __GCONV_ILLEGAL_INPUT)
|
if (res != __GCONV_ILLEGAL_INPUT)
|
||||||
{
|
{
|
||||||
|
@@ -170,7 +170,8 @@
|
|||||||
|
|
||||||
/* To make it easier for the writers of the modules, we define a macro
|
/* To make it easier for the writers of the modules, we define a macro
|
||||||
to test whether we have to ignore errors. */
|
to test whether we have to ignore errors. */
|
||||||
#define ignore_errors_p() (flags & __GCONV_IGNORE_ERRORS)
|
#define ignore_errors_p() \
|
||||||
|
(irreversible != NULL && (flags & __GCONV_IGNORE_ERRORS))
|
||||||
|
|
||||||
|
|
||||||
/* Error handling with transliteration/transcription function use and
|
/* Error handling with transliteration/transcription function use and
|
||||||
@@ -181,6 +182,12 @@
|
|||||||
struct __gconv_trans_data *trans; \
|
struct __gconv_trans_data *trans; \
|
||||||
\
|
\
|
||||||
result = __GCONV_ILLEGAL_INPUT; \
|
result = __GCONV_ILLEGAL_INPUT; \
|
||||||
|
\
|
||||||
|
if (irreversible == NULL) \
|
||||||
|
/* This means we are in call from __gconv_transliterate. In this \
|
||||||
|
case we are not doing any error recovery outself. */ \
|
||||||
|
break; \
|
||||||
|
\
|
||||||
/* First try the transliteration methods. */ \
|
/* First try the transliteration methods. */ \
|
||||||
for (trans = step_data->__trans; trans != NULL; trans = trans->__next) \
|
for (trans = step_data->__trans; trans != NULL; trans = trans->__next) \
|
||||||
{ \
|
{ \
|
||||||
|
@@ -320,6 +320,7 @@ FUNCTION_NAME (struct __gconv_step *step, struct __gconv_step_data *data,
|
|||||||
/* This variable is used to count the number of characters we
|
/* This variable is used to count the number of characters we
|
||||||
actually converted. */
|
actually converted. */
|
||||||
size_t lirreversible = 0;
|
size_t lirreversible = 0;
|
||||||
|
size_t *lirreversiblep = irreversible ? &lirreversible : NULL;
|
||||||
#if defined _STRING_ARCH_unaligned \
|
#if defined _STRING_ARCH_unaligned \
|
||||||
|| MIN_NEEDED_FROM == 1 || MAX_NEEDED_FROM % MIN_NEEDED_FROM != 0 \
|
|| MIN_NEEDED_FROM == 1 || MAX_NEEDED_FROM % MIN_NEEDED_FROM != 0 \
|
||||||
|| MIN_NEEDED_TO == 1 || MAX_NEEDED_TO % MIN_NEEDED_TO != 0
|
|| MIN_NEEDED_TO == 1 || MAX_NEEDED_TO % MIN_NEEDED_TO != 0
|
||||||
@@ -350,7 +351,7 @@ FUNCTION_NAME (struct __gconv_step *step, struct __gconv_step_data *data,
|
|||||||
# if MAX_NEEDED_FROM > 1
|
# if MAX_NEEDED_FROM > 1
|
||||||
if (MAX_NEEDED_TO == 1 || FROM_DIRECTION)
|
if (MAX_NEEDED_TO == 1 || FROM_DIRECTION)
|
||||||
status = SINGLE(FROM_LOOP) (step, data, inptrp, inend, &outbuf,
|
status = SINGLE(FROM_LOOP) (step, data, inptrp, inend, &outbuf,
|
||||||
outend, &lirreversible
|
outend, lirreversiblep
|
||||||
EXTRA_LOOP_ARGS);
|
EXTRA_LOOP_ARGS);
|
||||||
# endif
|
# endif
|
||||||
# if MAX_NEEDED_FROM > 1 && MAX_NEEDED_TO > 1 && !ONE_DIRECTION
|
# if MAX_NEEDED_FROM > 1 && MAX_NEEDED_TO > 1 && !ONE_DIRECTION
|
||||||
@@ -358,7 +359,7 @@ FUNCTION_NAME (struct __gconv_step *step, struct __gconv_step_data *data,
|
|||||||
# endif
|
# endif
|
||||||
# if MAX_NEEDED_TO > 1 && !ONE_DIRECTION
|
# if MAX_NEEDED_TO > 1 && !ONE_DIRECTION
|
||||||
status = SINGLE(TO_LOOP) (step, data, inptrp, inend, &outbuf,
|
status = SINGLE(TO_LOOP) (step, data, inptrp, inend, &outbuf,
|
||||||
outend, &lirreversible EXTRA_LOOP_ARGS);
|
outend, lirreversiblep EXTRA_LOOP_ARGS);
|
||||||
# endif
|
# endif
|
||||||
|
|
||||||
if (__builtin_expect (status, __GCONV_OK) != __GCONV_OK)
|
if (__builtin_expect (status, __GCONV_OK) != __GCONV_OK)
|
||||||
@@ -402,11 +403,11 @@ FUNCTION_NAME (struct __gconv_step *step, struct __gconv_step_data *data,
|
|||||||
if (FROM_DIRECTION)
|
if (FROM_DIRECTION)
|
||||||
/* Run the conversion loop. */
|
/* Run the conversion loop. */
|
||||||
status = FROM_LOOP (step, data, inptrp, inend, &outbuf, outend,
|
status = FROM_LOOP (step, data, inptrp, inend, &outbuf, outend,
|
||||||
&lirreversible EXTRA_LOOP_ARGS);
|
lirreversiblep EXTRA_LOOP_ARGS);
|
||||||
else
|
else
|
||||||
/* Run the conversion loop. */
|
/* Run the conversion loop. */
|
||||||
status = TO_LOOP (step, data, inptrp, inend, &outbuf, outend,
|
status = TO_LOOP (step, data, inptrp, inend, &outbuf, outend,
|
||||||
&lirreversible EXTRA_LOOP_ARGS);
|
lirreversiblep EXTRA_LOOP_ARGS);
|
||||||
}
|
}
|
||||||
#if !defined _STRING_ARCH_unaligned \
|
#if !defined _STRING_ARCH_unaligned \
|
||||||
&& MIN_NEEDED_FROM != 1 && MAX_NEEDED_FROM % MIN_NEEDED_FROM == 0 \
|
&& MIN_NEEDED_FROM != 1 && MAX_NEEDED_FROM % MIN_NEEDED_FROM == 0 \
|
||||||
@@ -417,13 +418,13 @@ FUNCTION_NAME (struct __gconv_step *step, struct __gconv_step_data *data,
|
|||||||
/* Run the conversion loop. */
|
/* Run the conversion loop. */
|
||||||
status = GEN_unaligned (FROM_LOOP) (step, data, inptrp, inend,
|
status = GEN_unaligned (FROM_LOOP) (step, data, inptrp, inend,
|
||||||
&outbuf, outend,
|
&outbuf, outend,
|
||||||
&lirreversible
|
lirreversiblep
|
||||||
EXTRA_LOOP_ARGS);
|
EXTRA_LOOP_ARGS);
|
||||||
else
|
else
|
||||||
/* Run the conversion loop. */
|
/* Run the conversion loop. */
|
||||||
status = GEN_unaligned (TO_LOOP) (step, data, inptrp, inend,
|
status = GEN_unaligned (TO_LOOP) (step, data, inptrp, inend,
|
||||||
&outbuf, outend,
|
&outbuf, outend,
|
||||||
&lirreversible
|
lirreversiblep
|
||||||
EXTRA_LOOP_ARGS);
|
EXTRA_LOOP_ARGS);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
@@ -498,7 +499,7 @@ FUNCTION_NAME (struct __gconv_step *step, struct __gconv_step_data *data,
|
|||||||
(const unsigned char *) inend,
|
(const unsigned char *) inend,
|
||||||
(unsigned char **) &outbuf,
|
(unsigned char **) &outbuf,
|
||||||
(unsigned char *) outerr,
|
(unsigned char *) outerr,
|
||||||
&lirreversible EXTRA_LOOP_ARGS);
|
lirreversiblep EXTRA_LOOP_ARGS);
|
||||||
else
|
else
|
||||||
/* Run the conversion loop. */
|
/* Run the conversion loop. */
|
||||||
nstatus = TO_LOOP (step, data,
|
nstatus = TO_LOOP (step, data,
|
||||||
@@ -506,7 +507,7 @@ FUNCTION_NAME (struct __gconv_step *step, struct __gconv_step_data *data,
|
|||||||
(const unsigned char *) inend,
|
(const unsigned char *) inend,
|
||||||
(unsigned char **) &outbuf,
|
(unsigned char **) &outbuf,
|
||||||
(unsigned char *) outerr,
|
(unsigned char *) outerr,
|
||||||
&lirreversible EXTRA_LOOP_ARGS);
|
lirreversiblep EXTRA_LOOP_ARGS);
|
||||||
|
|
||||||
/* We must run out of output buffer space in this
|
/* We must run out of output buffer space in this
|
||||||
rerun. */
|
rerun. */
|
||||||
|
@@ -1,3 +1,7 @@
|
|||||||
|
2000-08-25 Ulrich Drepper <drepper@redhat.com>
|
||||||
|
|
||||||
|
* locales/i18n (default_missing): Change back to only U003F.
|
||||||
|
|
||||||
2000-08-24 Andreas Jaeger <aj@suse.de>
|
2000-08-24 Andreas Jaeger <aj@suse.de>
|
||||||
|
|
||||||
* Makefile (generated): Add some .out files.
|
* Makefile (generated): Add some .out files.
|
||||||
|
@@ -805,7 +805,7 @@ translit_start
|
|||||||
% RIGHT DOUBLE QUOTATION MARK.
|
% RIGHT DOUBLE QUOTATION MARK.
|
||||||
<U201D> <U0022>
|
<U201D> <U0022>
|
||||||
|
|
||||||
default_missing <UFFFD>;<U003F>
|
default_missing <U003F>
|
||||||
|
|
||||||
translit_end
|
translit_end
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user