projects
/
yaz-moved-to-github.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
bdcf00f
)
Create entities for MARC data (& <)
author
Adam Dickmeiss
<adam@indexdata.dk>
Wed, 2 Oct 2002 15:51:52 +0000
(15:51 +0000)
committer
Adam Dickmeiss
<adam@indexdata.dk>
Wed, 2 Oct 2002 15:51:52 +0000
(15:51 +0000)
util/marcdisp.c
patch
|
blob
|
history
diff --git
a/util/marcdisp.c
b/util/marcdisp.c
index
840c0b1
..
8133832
100644
(file)
--- a/
util/marcdisp.c
+++ b/
util/marcdisp.c
@@
-2,7
+2,7
@@
* Copyright (c) 1995-2002, Index Data
* See the file LICENSE for details.
*
* Copyright (c) 1995-2002, Index Data
* See the file LICENSE for details.
*
- * $Id: marcdisp.c,v 1.19 2002-03-18 18:11:45 adam Exp $
+ * $Id: marcdisp.c,v 1.20 2002-10-02 15:51:52 adam Exp $
*/
#if HAVE_CONFIG_H
*/
#if HAVE_CONFIG_H
@@
-192,7
+192,12
@@
int yaz_marc_decode (const char *buf, WRBUF wr, int debug, int bsize, int xml)
while (buf[i] != ISO2709_RS && buf[i] != ISO2709_IDFS &&
buf[i] != ISO2709_FS && i < end_offset)
{
while (buf[i] != ISO2709_RS && buf[i] != ISO2709_IDFS &&
buf[i] != ISO2709_FS && i < end_offset)
{
- wrbuf_putc (wr, buf[i]);
+ if (xml && buf[i] == '<')
+ wrbuf_puts(wr, "<");
+ else if (xml && buf[i] == '&')
+ wrbuf_puts(wr, "&");
+ else
+ wrbuf_putc (wr, buf[i]);
i++;
}
if (xml)
i++;
}
if (xml)
@@
-200,7
+205,12
@@
int yaz_marc_decode (const char *buf, WRBUF wr, int debug, int bsize, int xml)
}
else
{
}
else
{
- wrbuf_putc (wr, buf[i]);
+ if (xml && buf[i] == '<')
+ wrbuf_puts(wr, "<");
+ else if (xml && buf[i] == '&')
+ wrbuf_puts(wr, "&");
+ else
+ wrbuf_putc (wr, buf[i]);
i++;
}
}
i++;
}
}