]> git.llucax.com Git - z.facultad/75.06/jacu.git/blobdiff - src/vfile/vfile.c
Cambio estetico :)
[z.facultad/75.06/jacu.git] / src / vfile / vfile.c
index aafb8514715b07632dd4a979d66e314eab0e742f..444deb21fa9c1d89f2ae7ed5d9a73fce96b4b0f7 100644 (file)
@@ -22,7 +22,7 @@
  * Autores: Leandro Lucarella <llucare@fi.uba.ar>
  *----------------------------------------------------------------------------
  *
  * Autores: Leandro Lucarella <llucare@fi.uba.ar>
  *----------------------------------------------------------------------------
  *
- * $Id: bufford.c 624 2004-05-30 20:18:04Z llucare $
+ * $Id$
  *
  */
 
  *
  */
 
@@ -127,12 +127,20 @@ int vfputc(int c, VFILE* vfp)
 
 size_t vfread(void* ptr, size_t size, size_t nmemb, VFILE* vfp)
 {
 
 size_t vfread(void* ptr, size_t size, size_t nmemb, VFILE* vfp)
 {
-       return 0;
+       int i = 0;
+       size_t total = size * nmemb;
+       /* leo uno a uno y si hay error salgo. */
+       while (i < total && (((char*)ptr)[i++] = vfgetc(vfp)) != EOF);
+       return i % size;
 }
 
 size_t vfwrite(const void *ptr, size_t size, size_t nmemb, VFILE* vfp)
 {
 }
 
 size_t vfwrite(const void *ptr, size_t size, size_t nmemb, VFILE* vfp)
 {
-       return 0;
+       int i = 0;
+       size_t total = size * nmemb;
+       /* escribo uno a uno y si hay error salgo. */
+       while (i < total && (vfputc(((char*)ptr)[i++], vfp)) != EOF);
+       return i % size;
 }
 
 int vfvol_close(VFILE* vfp)
 }
 
 int vfvol_close(VFILE* vfp)