refresh frame fix, dblclk proxy viewer fix, vicon refresh fix for awdw resize, fix...
[goodguy/history.git] / cinelerra-5.1 / cinelerra / filexml.h
index c6506f02d8e108ed030afbde35d33959a1e3ca2c..af45e3088bd8adde783af10b37ed613fae204d14 100644 (file)
@@ -38,10 +38,10 @@ class XMLBuffer
        unsigned char *inp, *outp, *bfr, *lmt;
        int destroy;
 
-       unsigned char *&demand(long len);
+       int demand(long len);
 public:
        XMLBuffer(long buf_size=0x1000, long max_size=LONG_MAX, int del=1);
-       XMLBuffer(long buf_size, const char *buf, int del=0); // writing
+       XMLBuffer(long buf_size, char *buf, int del=0); // writing
        XMLBuffer(const char *buf, long buf_size, int del=0); // reading
        ~XMLBuffer();
 
@@ -56,10 +56,7 @@ public:
 
        int cur()  { return outp>=inp ? -1 : *outp; }
        int next() { return outp>=inp ? -1 : *outp++; }
-       int next(int ch) {
-               demand(otell()+1);
-               return *inp++ = ch;
-       }
+       int next(int ch) { return !demand(otell()+1) ? -1 : *inp++ = ch; }
 
        static char *decode_data(char *bp, const char *sp, int n=-1);
        static char *encode_data(char *bp, const char *sp, int n=-1);