From a4a1ce766d9ac0284e4bb28a1c3f7f0f3d1a6204 Mon Sep 17 00:00:00 2001
From: Chin <chin.bimbo@gmail.com>
Date: Sat, 24 Jan 2015 10:45:06 -0500
Subject: [PATCH] AppVeyor: Sanitize the file name before uploading

---
 appveyor.yml      | 11 +++++------
 upload_to_mega.js |  5 ++++-
 2 files changed, 9 insertions(+), 7 deletions(-)

diff --git a/appveyor.yml b/appveyor.yml
index 8e7bacd6fe..7c985b940a 100644
--- a/appveyor.yml
+++ b/appveyor.yml
@@ -6,9 +6,11 @@ clone_depth: 1
 
 environment:
   QTDIR: C:\Qt\5.4\msvc2013_opengl
+  MEGA_EMAIL:
+    secure: dLyH/46MKKuCZyozkwwVGCL7nVyX+Cxyo1hVlCUaQDU=
   MEGA_PASSWORD:
     secure: ozgp54EZj98kcbD/O+Xl5Q==
-    
+
 platform:
   - Win32
 
@@ -23,7 +25,7 @@ before_build:
   - cd build
   - cmake ..
   - cd ..
-  
+
 after_build:
   # upload the build to Mega
   - cinst wget -x86
@@ -38,12 +40,9 @@ after_build:
   - copy C:\Qt\5.4\msvc2013_opengl\bin\Qt5Gui.dll  build\bin\release
   - copy C:\Qt\5.4\msvc2013_opengl\bin\Qt5OpenGL.dll build\bin\release
   - copy C:\Qt\5.4\msvc2013_opengl\bin\Qt5Widgets.dll  build\bin\release
-    # delete build craps
-  - del /F /S /Q /A "build\bin\release\*.ilk"
-  - del /F /S /Q /A "build\bin\release\*.pdb"
     # zip up the build folder -> build.7z
   - 7z a build .\build\bin\release\*
     # rename, upload to Mega
+  - npm install sanitize-filename
   - cd megatools-1.9.94-win64
   - node ..\upload_to_mega.js
-  
diff --git a/upload_to_mega.js b/upload_to_mega.js
index 1d47f4fd8b..c0abd5ed51 100644
--- a/upload_to_mega.js
+++ b/upload_to_mega.js
@@ -1,11 +1,13 @@
 var util = require('util');
 var exec = require('child_process').exec;
+var sanitize = require("sanitize-filename");
 
-var email = 'chin.bimbo@gmail.com';
+var email = process.env.MEGA_EMAIL;
 var password = process.env.MEGA_PASSWORD;
 var sourceFileName = 'build.7z';
 var dstFileName = process.env.APPVEYOR_REPO_COMMIT.substring(0, 8) + " - " + 
                 process.env.APPVEYOR_REPO_COMMIT_MESSAGE.substring(0, 100) + ".7z";
+dstFileName = sanitize(dstFileName);
 
 var cmd = util.format('megaput ../%s --path \"/Root/Citra/Windows/%s\" --username=%s --password=%s --no-progress',
                         sourceFileName,
@@ -13,6 +15,7 @@ var cmd = util.format('megaput ../%s --path \"/Root/Citra/Windows/%s\" --usernam
                         email,
                         password);
 
+// only upload build on master branch, and not on other branches or PRs
 if (process.env.APPVEYOR_REPO_BRANCH == "master") {
     console.log("Uploading file " + dstFileName + " to Mega...");
     exec(cmd, function(error, stdout, stderr) {