diff --git a/lib/modules/Stdio.pmod b/lib/modules/Stdio.pmod
index 7a04886f1884e0a45673ae6406a2c754bc2f597b..d89af7ebcbc906c3eda8df3910a685257133841b 100644
--- a/lib/modules/Stdio.pmod
+++ b/lib/modules/Stdio.pmod
@@ -61,7 +61,7 @@ class FILE {
 
     int tell()
     {
-      return bpos;
+      return file::tell()-sizeof(b)+bpos;
     }
 
     int close(void|string mode)