diff --git a/lib/private/urlgenerator.php b/lib/private/urlgenerator.php
index 5c1d9d825b62ef579cac53d8caa52f27c63b9d42..1ec10fe56889d1ff5e306f1046d9a29c18c46b3e 100644
--- a/lib/private/urlgenerator.php
+++ b/lib/private/urlgenerator.php
@@ -81,17 +81,35 @@ class URLGenerator implements IURLGenerator {
 		// Read the selected theme from the config file
 		$theme = \OC_Util::getTheme();
 
+		//if a theme has a png but not an svg always use the png
+		$basename = substr(basename($image),0,-4);
+
 		// Check if the app is in the app folder
 		if (file_exists(\OC::$SERVERROOT . "/themes/$theme/apps/$app/img/$image")) {
 			return \OC::$WEBROOT . "/themes/$theme/apps/$app/img/$image";
+		} elseif (!file_exists(\OC::$SERVERROOT . "/themes/$theme/apps/$app/img/$basename.svg")
+				&& file_exists(\OC::$SERVERROOT . "/themes/$theme/apps/$app/img/$basename.png")) {
+			return \OC::$WEBROOT . "/themes/$theme/apps/$app/img/$basename.png";
 		} elseif (file_exists(\OC_App::getAppPath($app) . "/img/$image")) {
 			return \OC_App::getAppWebPath($app) . "/img/$image";
+		} elseif (!file_exists(\OC_App::getAppPath($app) . "/img/$basename.svg")
+				&& file_exists(\OC_App::getAppPath($app) . "/img/$basename.png")) {
+			return \OC_App::getAppPath($app) . "/img/$basename.png";
 		} elseif (!empty($app) and file_exists(\OC::$SERVERROOT . "/themes/$theme/$app/img/$image")) {
 			return \OC::$WEBROOT . "/themes/$theme/$app/img/$image";
+		} elseif (!empty($app) and (!file_exists(\OC::$SERVERROOT . "/themes/$theme/$app/img/$basename.svg")
+				&& file_exists(\OC::$WEBROOT . "/themes/$theme/$app/img/$basename.png"))) {
+			return \OC::$WEBROOT . "/themes/$theme/$app/img/$basename.png";
 		} elseif (!empty($app) and file_exists(\OC::$SERVERROOT . "/$app/img/$image")) {
 			return \OC::$WEBROOT . "/$app/img/$image";
+		} elseif (!empty($app) and (!file_exists(\OC::$SERVERROOT . "/$app/img/$basename.svg")
+				&& file_exists(\OC::$WEBROOT . "/$app/img/$basename.png"))) {
+			return \OC::$WEBROOT . "/$app/img/$basename.png";
 		} elseif (file_exists(\OC::$SERVERROOT . "/themes/$theme/core/img/$image")) {
 			return \OC::$WEBROOT . "/themes/$theme/core/img/$image";
+		} elseif (!file_exists(\OC::$SERVERROOT . "/themes/$theme/core/img/$basename.svg")
+				&& file_exists(\OC::$SERVERROOT . "/themes/$theme/core/img/$basename.png")) {
+			return \OC::$WEBROOT . "/themes/$theme/core/img/$basename.png";
 		} elseif (file_exists(\OC::$SERVERROOT . "/core/img/$image")) {
 			return \OC::$WEBROOT . "/core/img/$image";
 		} else {