add function to partition.cpp to return max file size to mtp responder
Change-Id: If8114b5eac741db6c512fb35cb48e3825c2ff098
diff --git a/mtp/MtpServer.cpp b/mtp/MtpServer.cpp
index c044cad..66a6414 100755
--- a/mtp/MtpServer.cpp
+++ b/mtp/MtpServer.cpp
@@ -1078,8 +1078,10 @@
 		unlink(mSendObjectFilePath);
 		if (errno == ECANCELED)
 			result = MTP_RESPONSE_TRANSACTION_CANCELLED;
-		else
+		else {
+		    	MTPD("errno: %d\n", errno);
 			result = MTP_RESPONSE_GENERAL_ERROR;
+		}
 	}
 
 done:
@@ -1093,7 +1095,7 @@
 	mSendObjectHandle = kInvalidObjectHandle;
 	MTPD("result: %d\n", result);
 	mSendObjectFormat = 0;
-	return MTP_RESPONSE_OK;
+	return result;
 }
 
 static void deleteRecursive(const char* path) {
diff --git a/mtp/mtp_MtpServer.cpp b/mtp/mtp_MtpServer.cpp
index 9df564f..17facdd 100755
--- a/mtp/mtp_MtpServer.cpp
+++ b/mtp/mtp_MtpServer.cpp
@@ -123,7 +123,7 @@
 				int storageID = stores->at(i)->mtpid;
 				long reserveSpace = 1;
 				bool removable = false;
-				long maxFileSize = 1000000000L;
+				long maxFileSize = stores->at(i)->maxFileSize;
 				if (descriptionStr != "") {
 					MtpStorage* storage = new MtpStorage(storageID, &pathStr[0], &descriptionStr[0], reserveSpace, removable, maxFileSize, refserver);
 					server->addStorage(storage);
diff --git a/mtp/mtp_MtpServer.hpp b/mtp/mtp_MtpServer.hpp
index ce6b13c..3153e80 100755
--- a/mtp/mtp_MtpServer.hpp
+++ b/mtp/mtp_MtpServer.hpp
@@ -36,6 +36,7 @@
 	std::string display;
 	std::string mount;
 	int mtpid;
+	uint64_t maxFileSize;
 } storage;
 
 typedef std::vector<storage*> storages;
diff --git a/mtp/twrpMtp.cpp b/mtp/twrpMtp.cpp
index 9a7df5b..d9db424 100755
--- a/mtp/twrpMtp.cpp
+++ b/mtp/twrpMtp.cpp
@@ -107,11 +107,12 @@
 	return 0;
 }
 
-void twrpMtp::addStorage(std::string display, std::string path, int mtpid) {
+void twrpMtp::addStorage(std::string display, std::string path, int mtpid, uint64_t maxFileSize) {
 	s = new storage;
 	s->display = display;
 	s->mount = path;
 	s->mtpid = mtpid;
+	s->maxFileSize = maxFileSize;
 	MTPD("twrpMtp mtpid: %d\n", s->mtpid);
 	mtpstorages->push_back(s);
 }
diff --git a/mtp/twrpMtp.hpp b/mtp/twrpMtp.hpp
index f0d8f4b..3aaa964 100755
--- a/mtp/twrpMtp.hpp
+++ b/mtp/twrpMtp.hpp
@@ -36,7 +36,7 @@
 		twrpMtp(int debug_enabled /* = 0 */);
 		pthread_t threadserver(void);
 		pid_t forkserver(void);
-		void addStorage(std::string display, std::string path, int mtpid);
+		void addStorage(std::string display, std::string path, int mtpid, uint64_t maxFileSize);
 	private:
 		int start(void);
 		typedef int (twrpMtp::*ThreadPtr)(void);