1. 14 Mar, 2019 1 commit
    • Moritz Bunkus's avatar
      Blu-ray utils: don't try to canonicalize the path · 2db0796b
      Moritz Bunkus authored
      On Windows symbolic links are used when mounting a drive as a
      sub-folder somewhere. Unfortunately Boost::Filesystem's `canonical`
      function tries to read those symlinks and throws an exception that the
      operation isn't supported.
      
      Fixes #2522.
      2db0796b
  2. 13 Mar, 2019 1 commit
  3. 12 Mar, 2019 14 commits
  4. 06 Mar, 2019 11 commits
  5. 23 Feb, 2019 5 commits
  6. 15 Feb, 2019 2 commits
    • Moritz Bunkus's avatar
      GUI: mux: add "Delay" column to track list · b372ad4e
      Moritz Bunkus authored
      Implements #2506.
      b372ad4e
    • Moritz Bunkus's avatar
      mkvmerge: catch boost::filesystem errors when looking for Blu-ray base dir · 3a0bd44e
      Moritz Bunkus authored
      mkvmerge tries to find the Blu-ray base directory when handling
      certain files that can occur on a Blu-ray such as M2TS or MPLS play
      list files. It tries to find additional files with as the streams
      referenced in the play lists or clip information files from the CLPI
      sub-directory.
      
      That function simply crawls the path upwards to the root of the file
      system. This works nicely with Unix paths (`/path/to/file.m2ts`) or
      normal Windows paths (`C:\path\to\file.m2ts`). Things go wrong on
      Windows with UNC paths, though (`\\servername\sharename\path\to\file.m2ts`).
      
      mkvmerge looks for `\\servername\sharename\path\to\index.bdmv` and
      then iterates back towards the server name. As soon as the path to
      check removes the share name, the check for the resulting
      `\\servername\index.bdmv` will throw a
      `boost::filesystem::filesystem_error` with the message that the server
      in question doesn't offer a share named `index.bdmv`. That exception
      must not bubble; instead the algorithm must simply stop at that point
      and return unsuccessfully.
      
      Fixes #2507.
      3a0bd44e
  7. 13 Feb, 2019 3 commits
  8. 10 Feb, 2019 2 commits
    • Moritz Bunkus's avatar
      GUI: Windows: make portable mode detection independent of current working directory · 2f5ba373
      Moritz Bunkus authored
      The "portable or installed" detection looks for a file called
      `portable-app` located in the `data` sub-directory of the directory
      the GUI's executable file is located in. For this to work the path to
      the executable file must be determined.
      
      Before the fix this was done in the constructor of the `App` class,
      which is rather early, but not early enough as the earliest code
      trying to access the settings file (and therefore the earliest code
      requiring knowledge of the executable's path) is actually run directly
      from `main` long before `App` is instantiated.
      
      When that code is run before the executable's path is determined, the
      path to the executable is left empty. Therefore the GUI looks in the
      current working directory for the `data\portable-app` file. This works
      if the current working directory is the same the executable is located
      in, e.g. you open Windows Explorer, navigate to the GUI's installation
      folder and double-click the executable. In that case determining if
      the application is portable or installed works just fine.
      
      However, the working directory might be set to something completely
      different. For example, the "open with" functionality sets the working
      directory to the directory the file that the user calls "open with" on
      is located in. The GUI then looks for `data\portable-app` in the same
      directory the clicked-on file resides in and will not find
      it. Consequently the GUI thinks it's been installed and looks for the
      settings file in the user's `AppData\local\bunkus.org\mkvtoolnix-gui`
      directory.
      
      The fix is to initialize the MKVToolNix common library and with it the
      current executable's location first thing from `main`, before the
      GUI looks for the settings file for the first time.
      
      Fixes #2501.
      2f5ba373
    • Moritz Bunkus's avatar
  9. 09 Feb, 2019 1 commit