diff --git a/README.md b/README.md index bd95cd674..b6750480e 100644 --- a/README.md +++ b/README.md @@ -6,6 +6,7 @@ Hubzilla - Community Server Help us redefine the web - using integrated and united community websites. -------------------------------------------------------------------------- +[![Build Status](https://travis-ci.org/redmatrix/hubzilla.svg)](https://travis-ci.org/redmatrix/hubzilla) **What are Hubs?** diff --git a/include/attach.php b/include/attach.php index a959a5bcb..1bba88c63 100644 --- a/include/attach.php +++ b/include/attach.php @@ -108,9 +108,9 @@ function z_mime_content_type($filename) { 'oth' => 'application/vnd.oasis.opendocument.text-web' ); - $dot = strpos($filename, '.'); - if ($dot !== false) { - $ext = strtolower(substr($filename, $dot + 1)); + $last_dot = strrpos($filename, '.'); + if ($last_dot !== false) { + $ext = strtolower(substr($filename, $last_dot + 1)); if (array_key_exists($ext, $mime_types)) { return $mime_types[$ext]; } diff --git a/tests/upload_test.php b/tests/upload_test.php new file mode 100644 index 000000000..031315fba --- /dev/null +++ b/tests/upload_test.php @@ -0,0 +1,29 @@ +assertEquals("audio/ogg", z_mime_content_type($multidots)); + $this->assertNotEquals("application/octet-stream", z_mime_content_type($multidots)); + } + + public function testFileNameOneDot() { + $multidots = "foo.ogg"; + $this->assertEquals("audio/ogg", z_mime_content_type($multidots)); + $this->assertNotEquals("application/octet-stream", z_mime_content_type($multidots)); + } +} \ No newline at end of file