I have no idea what this does but this line looks very suspicious to me: maxSize = self._options['uploadMaxSize'] * 1024 * 1024 * 1024
On Nov 3, 3:42 pm, Phyo Arkar <[email protected]> wrote: > Maybe thats why.I was using elfinder , which i made web2py integration. > The code is here: > > def __upload(self): > """Upload files""" > try: # Windows needs stdio set for binary mode. > import msvcrt > msvcrt.setmode (0, os.O_BINARY) # stdin = 0 > msvcrt.setmode (1, os.O_BINARY) # stdout = 1 > except ImportError: > pass > ###DONE: Fix Upload's Response > if 'current' in self._request: > curDir = self.__findDir(self._request['current'], None) > if not curDir: > self._response['error'] = 'Invalid parameters' > return > if not self.__isAllowed(curDir, 'write'): > self._response['error'] = 'Access denied' > return > if not 'upload[]' in self._request: > self._response['error'] = 'No file to upload' > return > > upFiles = self._request['upload[]'] > # invalid format > # must be dict('filename1': 'filedescriptor1', 'filename2': > 'filedescriptor2', ...) > if not isinstance(upFiles, dict): > self._response['error'] = 'Invalid parameters' > return > > # self._response['select'] = [] > total = 0 > upSize = 0 > maxSize = self._options['uploadMaxSize'] * 1024 * 1024 * 1024 > for name, data in upFiles.iteritems(): > if name: > total += 1 > name = os.path.basename(name) > if not self.__checkName(name): > self.__errorData(name, 'Invalid name') > else: > name = os.path.join(curDir, name) > try: > f = open(name, 'wb', > self._options['uploadWriteChunk']) > for chunk in self.__fbuffer(data): > f.write(chunk) > f.close() > upSize += os.lstat(name).st_size > if self.__isUploadAllow(name): > os.chmod(name, self._options['fileMode']) > # > self._response['select'].append(self.__hash(name)) > else: > self.__errorData(name, 'Not allowed file > type') > try: > os.unlink(name) > except: > pass > except: > self.__errorData(name, 'Unable to save uploaded > file') > if upSize > maxSize: > try: > os.unlink(name) > self.__errorData(name, 'File exceeds the > maximum allowed filesize') > except: > pass > # TODO ? > self.__errorData(name, 'File was only > partially uploaded') > break > > if self._errorData: > if len(self._errorData) == total: > self._response['error'] = 'Unable to upload files' > else: > self._response['error'] = 'Some files was not uploaded' > > self.__content(curDir, False) > return > > As it has to be in module how can i use Web2py's upload function there? I > will check web2py's upload code. > > Thanks a lot. > > Oh , also this can you list as appliance for web2py ? I made it a few months > ago and you ask me to make it plugin but i do't know how to make it plugin > so hmm but can run directly as appliance. > > http://code.google.com/p/*elfinder*-*web2py*/ > > On Wed, Nov 3, 2010 at 4:30 AM, mdipierro <[email protected]> wrote: > > web2py was tested extensively with large files (up to 2GB, the max > > browsers can handle) on machines with low memory (256MB). > > > Can you post the code you use for uploading? > > > The only way I can see this problem is if you upload into a blob. > > > On Nov 2, 3:46 pm, Phyo Arkar <[email protected]> wrote: > > > Hello all; > > > > If i upload a large file (800 MB) and closed the browser tab while > > > uploading , it freeze the whole web2py. Anyone have this problem? > > > > Tried on Local Web2py. Not without using any http server. > >

