]> mj.ucw.cz Git - libucw.git/blobdiff - lib/object.c
Moved shell script support commands to lib/shell.
[libucw.git] / lib / object.c
index 0a0686540ab36aa3a6cdebfeae6c088e83cf3bf7..d3e9b9aa4f45c316f2c0cdbed8e630f3d9786014 100644 (file)
@@ -2,6 +2,9 @@
  *     Sherlock Library -- Object Functions
  *
  *     (c) 1997--2001 Martin Mares <mj@ucw.cz>
+ *
+ *     This software may be freely distributed and used according to the terms
+ *     of the GNU Lesser General Public License.
  */
 
 #include "lib/lib.h"
@@ -60,7 +63,7 @@ obj_free(struct odes *o)
 int
 obj_read(struct fastbuf *f, struct odes *o)
 {
-  byte buf[1024];
+  byte buf[4096];
   struct oattr **last = &o->attrs;
   struct oattr *a, *la;
 
@@ -100,7 +103,7 @@ obj_write(struct fastbuf *f, struct odes *d)
       {
        bputc(f, a->attr);
        for(z = b->val; *z; z++)
-         if (*z >= ' ')
+         if (*z >= ' ' || *z == '\t')
            bputc(f, *z);
          else
            {
@@ -235,6 +238,8 @@ obj_prepend_attr(struct odes *o, uns x, byte *v)
       if (a->attr == x)
        {
          b->same = a;
+         b->next = a->next;
+         a->next = NULL;
          *z = b;
          b->last_same = a->last_same;
          return b;