diff options
Diffstat (limited to 'lcmodfs.py')
| -rwxr-xr-x | lcmodfs.py | 31 |
1 files changed, 10 insertions, 21 deletions
@@ -13,14 +13,14 @@ # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. import os +from base import * import sys, pdb -import llfuse, errno, stat +import errno, stat import faulthandler import requests, threading sys.path.append("../larryviewer") #FIXME -sys.path.append("../lc/src") #FIXME +HAVE_QT = False from larryviewer import * -from base import * faulthandler.enable() class LCModOperations(LCOperations): @@ -31,6 +31,7 @@ class LCModOperations(LCOperations): super().__init__() self._viewer = v for i in range(v.ui.lsEntries.count()): + e = v.ui.lsEntries.item(i) self._add_entry(llfuse.ROOT_INODE, v.ui.lsEntries.item(i).larry, True) def _is_dir(self, inode): @@ -38,7 +39,6 @@ class LCModOperations(LCOperations): def opendir(self, inode, ctx=None): if inode != llfuse.ROOT_INODE: - print(inode) try: self._get_inode_by_parent(inode) except IndexError: @@ -59,10 +59,8 @@ class LCModOperations(LCOperations): if self.getattr(inode).st_mode & stat.S_IFDIR: raise llfuse.FUSEError(errno.EISDIR) - print("checking flags") if flags & os.O_APPEND: raise llfuse.FUSEError(errno.EROFS) - print("returning") return inode def read(self, inode, off, size): @@ -72,14 +70,11 @@ class LCModOperations(LCOperations): except Exception as e: print(e) raise llfuse.FUSEError(errno.EREMOTEIO) from e - print(r, off, size) if not r: raise llfuse.FUSEError(errno.EREMOTEIO) elif r.status_code == 206: - print("partial content", r.headers["Content-Length"]) - b = r.raw.read(size) - return b + return r.raw.read(size) else: buf = BytesIO() @@ -94,18 +89,10 @@ class LCModOperations(LCOperations): buf.seek(i - off) return buf.read(size) - #def flush(self, inode): - #pass - - #def close(self, inode): - #pass - - #def release(self, inode): - #pass - + + if __name__ == "__main__": # Usage: ./lcfs.py <mountpoint> - app = QApplication(sys.argv) cwd = os.getcwd() os.chdir("../larryviewer") #FIXME v = LarryViewer() @@ -115,11 +102,13 @@ if __name__ == "__main__": t.join() fuse_options = set(llfuse.default_options) fuse_options.add("fsname=lcmodfs") - fuse_options.add("debug") + #fuse_options.add("debug") fuse_options.discard("default_permissions") + op = LCModOperations(v) llfuse.init(op, sys.argv[1], fuse_options) try: + #threading.Thread(target=findBrokenEntries).start() llfuse.main(workers=1) except: llfuse.close(unmount=True) |
