From 574169c8b66a248aa16902793f602dcc3a576de1 Mon Sep 17 00:00:00 2001 From: richard Date: Sun, 12 May 2013 23:16:55 +0100 Subject: [PATCH] files < 16bytes, upload/download bug fix, see pull #45 --- mega/mega.py | 16 ++++++++++++++-- setup.py | 2 +- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/mega/mega.py b/mega/mega.py index 2a3f0d1..eb808ed 100644 --- a/mega/mega.py +++ b/mega/mega.py @@ -457,7 +457,13 @@ class Mega(object): for i in range(0, len(chunk)-16, 16): block = chunk[i:i + 16] encryptor.encrypt(block) - i += 16 + + #fix for files under 16 bytes failing + if file_size > 16: + i += 16 + else: + i = 0 + block = chunk[i:i + 16] if len(block) % 16: block += '\0' * (16 - (len(block) % 16)) @@ -514,7 +520,13 @@ class Mega(object): for i in range(0, len(chunk)-16, 16): block = chunk[i:i + 16] encryptor.encrypt(block) - i += 16 + + #fix for files under 16 bytes failing + if file_size > 16: + i += 16 + else: + i = 0 + block = chunk[i:i + 16] if len(block) % 16: block += '\0' * (16 - len(block) % 16) diff --git a/setup.py b/setup.py index ef198bb..69772b8 100644 --- a/setup.py +++ b/setup.py @@ -30,7 +30,7 @@ def get_package_data(package): setup( name='mega.py', - version='0.9.13', + version='0.9.14', packages=get_packages('mega'), package_data=get_package_data('mega'), description='Python lib for the Mega.co.nz API',