/[public]/psiconv/trunk/lib/psiconv/generate_simple.c
ViewVC logotype

Diff of /psiconv/trunk/lib/psiconv/generate_simple.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

Revision 181 Revision 182
27 27
28#ifdef DMALLOC 28#ifdef DMALLOC
29#include <dmalloc.h> 29#include <dmalloc.h>
30#endif 30#endif
31 31
32static int psiconv_write_string_aux(const psiconv_config config,psiconv_buffer buf, const psiconv_string_t value,int kind);
32 33
33int psiconv_write_u8(const psiconv_config config,psiconv_buffer buf,const psiconv_u8 value) 34int psiconv_write_u8(const psiconv_config config,psiconv_buffer buf,const psiconv_u8 value)
34{ 35{
35 return psiconv_buffer_add(buf,value); 36 return psiconv_buffer_add(buf,value);
36} 37}
103 return psiconv_write_u8(config,buf,value == psiconv_bool_false?0:1); 104 return psiconv_write_u8(config,buf,value == psiconv_bool_false?0:1);
104} 105}
105 106
106int psiconv_write_string(const psiconv_config config,psiconv_buffer buf, const psiconv_string_t value) 107int psiconv_write_string(const psiconv_config config,psiconv_buffer buf, const psiconv_string_t value)
107{ 108{
109 return psiconv_write_string_aux(config,buf,value,0);
110}
111
112int psiconv_write_short_string(const psiconv_config config,psiconv_buffer buf, const psiconv_string_t value)
113{
114 return psiconv_write_string_aux(config,buf,value,1);
115}
116
117int psiconv_write_string_aux(const psiconv_config config,psiconv_buffer buf, const psiconv_string_t value,int kind)
118{
108 int res,i; 119 int res,i;
109 if (!value) { 120 if (!value) {
110 psiconv_warn(config,0,psiconv_buffer_length(buf), 121 psiconv_warn(config,0,psiconv_buffer_length(buf),
111 "NULL string"); 122 "NULL string");
112 return -PSICONV_E_GENERATE; 123 return -PSICONV_E_GENERATE;
113 } 124 }
125 if (kind == 0)
114 if ((res = psiconv_write_S(config,buf,strlen(value)))) 126 res = psiconv_write_S(config,buf,strlen(value));
127 else
128 res = psiconv_write_u8(config,buf,strlen(value));
129 if (res)
115 return res; 130 return res;
116 for (i = 0; i < strlen(value); i++) 131 for (i = 0; i < strlen(value); i++)
117 if ((res = psiconv_write_u8(config,buf,value[i]))) 132 if ((res = psiconv_write_u8(config,buf,value[i])))
118 return res; 133 return res;
119 return -PSICONV_E_OK; 134 return -PSICONV_E_OK;

Legend:
Removed from v.181  
changed lines
  Added in v.182

frodo@frodo.looijaard.name
ViewVC Help
Powered by ViewVC 1.1.26