projects
/
yaz-moved-to-github.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Version 5.10.0
[yaz-moved-to-github.git]
/
src
/
iconv_decode_danmarc.c
diff --git
a/src/iconv_decode_danmarc.c
b/src/iconv_decode_danmarc.c
index
3dc0f6e
..
cf9e50c
100644
(file)
--- a/
src/iconv_decode_danmarc.c
+++ b/
src/iconv_decode_danmarc.c
@@
-1,5
+1,5
@@
/* This file is part of the YAZ toolkit.
/* This file is part of the YAZ toolkit.
- * Copyright (C) 1995-2008 Index Data
+ * Copyright (C) Index Data
* See the file LICENSE for details.
*/
/**
* See the file LICENSE for details.
*/
/**
@@
-15,7
+15,6
@@
#include <assert.h>
#include <errno.h>
#include <string.h>
#include <assert.h>
#include <errno.h>
#include <string.h>
-#include <ctype.h>
#include <stdio.h>
#include <yaz/log.h>
#include <yaz/xmalloc.h>
#include <stdio.h>
#include <yaz/log.h>
#include <yaz/xmalloc.h>
@@
-25,7
+24,7
@@
struct decoder_data {
unsigned long x_back;
};
unsigned long x_back;
};
-static unsigned long read_danmarc(yaz_iconv_t cd,
+static unsigned long read_danmarc(yaz_iconv_t cd,
yaz_iconv_decoder_t d,
unsigned char *inp,
size_t inbytesleft, size_t *no_read)
yaz_iconv_decoder_t d,
unsigned char *inp,
size_t inbytesleft, size_t *no_read)
@@
-58,14
+57,12
@@
static unsigned long read_danmarc(yaz_iconv_t cd,
*no_read = 2;
break;
case 0xe5: /* LATIN SMALL LETTER A WITH RING ABOVE */
*no_read = 2;
break;
case 0xe5: /* LATIN SMALL LETTER A WITH RING ABOVE */
- x = 'a';
- data->x_back = 'a';
- *no_read = 1;
+ x = 0xa733;
+ *no_read = 2;
break;
case 0xc5: /* LATIN CAPITAL LETTER A WITH RING ABOVE */
break;
case 0xc5: /* LATIN CAPITAL LETTER A WITH RING ABOVE */
- x = 'A';
- data->x_back = 'a';
- *no_read = 1;
+ x = 0xa732;
+ *no_read = 2;
break;
default:
if (inbytesleft < 5)
break;
default:
if (inbytesleft < 5)
@@
-77,7
+74,7
@@
static unsigned long read_danmarc(yaz_iconv_t cd,
else
{
unsigned long v;
else
{
unsigned long v;
- sscanf(inp+1, "%4lx", &v);
+ sscanf((const char *) inp+1, "%4lx", &v);
*no_read = 5;
x = v;
}
*no_read = 5;
x = v;
}
@@
-106,7
+103,7
@@
void destroy_danmarc(yaz_iconv_decoder_t d)
yaz_iconv_decoder_t yaz_danmarc_decoder(const char *fromcode,
yaz_iconv_decoder_t d)
yaz_iconv_decoder_t yaz_danmarc_decoder(const char *fromcode,
yaz_iconv_decoder_t d)
-
+
{
if (!yaz_matchstr(fromcode, "danmarc"))
{
{
if (!yaz_matchstr(fromcode, "danmarc"))
{
@@
-126,7
+123,9
@@
yaz_iconv_decoder_t yaz_danmarc_decoder(const char *fromcode,
/*
* Local variables:
* c-basic-offset: 4
/*
* Local variables:
* c-basic-offset: 4
+ * c-file-style: "Stroustrup"
* indent-tabs-mode: nil
* End:
* vim: shiftwidth=4 tabstop=8 expandtab
*/
* indent-tabs-mode: nil
* End:
* vim: shiftwidth=4 tabstop=8 expandtab
*/
+