From 8b6212777016404ce265631136bc4cccc9bc842c Mon Sep 17 00:00:00 2001
From: Max Kellermann <max@duempel.org>
Date: Fri, 29 Aug 2014 23:03:29 +0200
Subject: [PATCH] decoder/gme: fix song duration

The unit of gme_info_t::length is milliseconds, not centiseconds.
---
 NEWS                             | 1 +
 src/decoder/GmeDecoderPlugin.cxx | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/NEWS b/NEWS
index 5d48d9126..22eda0f14 100644
--- a/NEWS
+++ b/NEWS
@@ -2,6 +2,7 @@ ver 0.18.13 (not yet released)
 * decoder
   - dsdiff, dsf: fix endless loop on malformed file
   - ffmpeg: support ffmpeg/libav version 11
+  - gme: fix song duration
 * fix state file saver
 * fix build failure on Darwin
 
diff --git a/src/decoder/GmeDecoderPlugin.cxx b/src/decoder/GmeDecoderPlugin.cxx
index d67ee4b42..9c9b19478 100644
--- a/src/decoder/GmeDecoderPlugin.cxx
+++ b/src/decoder/GmeDecoderPlugin.cxx
@@ -235,7 +235,7 @@ gme_scan_file(const char *path_fs,
 
 	if (ti->length > 0)
 		tag_handler_invoke_duration(handler, handler_ctx,
-					    ti->length / 100);
+					    ti->length / 1000);
 
 	if (ti->song != nullptr) {
 		if (gme_track_count(emu) > 1) {