Commits on Feb 18, 2011
  1. Add MTV_PUBLIC to a bunch of mythiowrapper protos

    It seems that via libmythbluray, we are trying to import some mythiowrapper
    functions in libmythmeta.  I added the public definitions to allow this to
    behave as expected with symbol visibility and mingw compiling.
    Refs #9586
    Beirdo committed Feb 18, 2011
  2. Converted TVRec threads to QThreads

    Pursuant to ticket #5501, I have converted the two threads (Event and Recorder)
    in TVRec to using QThread instead of directly using pthreads.
    This has been running fine for 28 recordings with no issues.
    Beirdo committed Feb 16, 2011
  3. Fix PPC compilation of NuppeDecoder and NuppelRecorder

    Patch from Lawrence Rust.
    Mark Kendall committed Feb 18, 2011
  4. configure: Fix libs order in check_ld()

    With patch and commentary from Lawrence Rust:
    'The configure script defines the function check_ld which tests if a
    named function can be compiled with specified headers and libraries.
    However, the libraries are placed after $extralibs in the linker
    invocation which can cause the link to fail if the tested libraries
    depend on $extralibs.'
    Mark Kendall committed Feb 18, 2011
  5. windows: Fix cross-compilation of libmyth.

    Mark Kendall committed Feb 18, 2011
  6. Remove a stray QMutex::unlock in the TV class.

    With thanks to Lawrence Rust for the patch.
    Mark Kendall committed Feb 18, 2011
  7. Fix a logging message

    Beirdo committed Feb 18, 2011
  8. Teletext: Fix a logging typo in AVFormatDecoder

    Mark Kendall committed Feb 18, 2011
  9. Add argument to mythtranscode for select audio track

    This change allows a user to select which audio track to extract/transcode
    when using mythtranscode.
    Slightly modified patch from #9541 (fixed the exit code)
    lmaendle committed with Beirdo Feb 18, 2011
Commits on Feb 17, 2011
  1. Add MUI_PUBLIC to some D3D9 classes

    It seems that perhaps a few classes here need to be declared to be public
    after moving them from libmythtv into libmythui.
    Refs #9586
    Beirdo committed Feb 17, 2011
  2. Fix a segfault in MusicPlayer::decoderHandlerReady().

    Any track with 'cda' in the filename was causing problems. This just uses a
    more sane way to detect if the decoder is a Cddecoder. Fixes #9591.
    Paul Harrison committed Feb 17, 2011
  3. Rework exitcodes

    MythTV has far too many exit codes, several of which have practically no
    purpose whatsoever.  Any distinction between the various exit codes is far
    easier dealt with by using log messages before exiting.  Do we really care that
    the error was in the logfile or the pidfile, for instance?  Most, if not all,
    scripts that use these return values check for 0 (success) or !0 (fail).
    Additionally, the exit codes *must* fit into 8 bits.  I forgot this minor
    detail earlier in the myth_system rewrite.  exit() only uses 8 bits, and will
    chop off all the higher order bits anyways.
    So...  I have combined the exit codes into far fewer exit codes, removed ones
    that are completely unused, and then renumbered them to have general errors
    start at 128.  This allows for 127 commercials to be flagged before we see a
    false error, which should be plenty.
    One place that could be somewhat changed in function is transcoding.  When
    the cutlist has been changed during a transcode run, I have folded that exit
    code from mythtranscode into the "restart transcoding" one.  Thus, it may
    have essentially aborted earlier, but would now restart the transcode run
    Please let me know if any oddities occur.
    Beirdo committed Feb 17, 2011
  4. Remove some extranous MPUBLICs.

    These belong in (and already exist in) the header, so remove the
    redundant MPUBLIC I added in 53dbc39.  No functional change.
    sphery committed Feb 17, 2011
  5. Finish the symbol-visibility conversion for plugins.

    Finish symbol-visibility conversion for plugins.  This re-enables
    plugins.  Changes binary version, requires make distclean (of mythtv and
    sphery committed Feb 17, 2011
Commits on Feb 16, 2011
  1. OK, I think I had too much perl. not -> !

    Thanks to dblain for noticing this idiocy.  Amazing that it even compiles with
    it that way.
    Beirdo committed Feb 16, 2011
  2. Remove util.cpp from

    The file was moved into libmythdb (now libmythbase) in f986c9b, but
    it wasn't removed from the .pro file.   This caused that source file to get
    compiled into both libraries, which caused an issue in #9586 after the split
    of the mythexp.h in 26ea667
    Distclean is suggested.
    Beirdo committed Feb 16, 2011
  3. Change ddMapLoad thread to QThread

    Pursuant to ticket #5501, I have changed the ddMapLoad thread in the TV class
    to use QThread instead of pthreads directly.  This code is only used by the
    frontend channel editor as best as I can tell, and I was able to trigger it
    running successfully.
    Beirdo committed Feb 16, 2011
  4. Auto-detect UI painter.

    If running on Windows, use D3D9.  Else, try the OpenGL UI painter.  If
    initialization fails or if OpenGL is not using direct rendering, fall
    back to the Qt painter.  This also removes the ThemePainter setting.
    The auto-detection will automatically choose the Qt painter for ssh X
    forwarding and such, but will use OpenGL painter for local display (when
    OpenGL is properly installed and configured on the underlying system) so
    users shouldn't need to worry about overriding the painter.
    Theme developers may test with a non-default painter by starting
    with -O UIPainter=[opengl|qt|d3d9].
    sphery committed Feb 16, 2011
  5. Don't use symbol visibility on ancient GCC.

    Only use symbol visibility on GCC 4.2+.  GCC 4.0 and 4.1 had
    symbol-visibility-related bugs when compiling x86_64 code.  This will
    affect very few users, but should allow Mac OS X users whose systems
    still use old GCC to compile MythTV.
    Refs #9426:comment:13
    sphery committed Feb 16, 2011
  6. Convert ThreadedFileWriter to QThreads

    As part of ticket #5501, I have converted the threads in ThreadedFileWriter
    to use QThread instead of pthreads directly.
    Beirdo committed Feb 13, 2011
  7. Convert DeviceReadBuffer from pthreads to QThread

    As part of ticket #5501, I'm chasing down all direct users of pthreads and
    converting them to QThreads.  This victim is the thread within the DevRdB code.
    This chunk of code could use a refactor, likely, but I have attempted to keep
    it as close to the previous code as possible.
    This code has been running in production here for 12 days.
    Beirdo committed Feb 4, 2011
  8. Perl bindings: Don't specify a MediaRenderer UDN

    Don't specify a MediaRenderer UDN when creating a config.xml with the
    Perl bindings.  The frontend will automatically generate one if not
    specified, and we don't want users copying files that specify the same
    UDN for multiple frontends.  This is the same approach used by the
    Python bindings.
    sphery committed Feb 16, 2011
Commits on Feb 15, 2011
  1. Change MPUBLIC to be unique per library

    This change is related to MPUBLIC defined in mythexp.h.  The way it's
    used today is incompatible with VS.  What has been committed is as follows:
      * Each library has its own mythXXXexp.h file.
      * Each library .pro file has a DEFINE added which is used in the
        mythXXXexp.h to determine if the symbol is being imported or exported
      * MPUBLIC has been replaced in each source file with one specific for
        the library in question.
    These changes have been made to each library / program that uses mythexp.h.
    dblain committed Feb 15, 2011
  2. Fix passing a URL key/value containing %26 (escaped &)

    It seems that this code *only* deals with Parameters in the URL (maybe on POST
    too), but not in SOAP requests from UPnP clients.  It should be a benign
    change to not mess with %26 in the params string before splitting on &.  Any
    self-respecting client will know that & separates the keys, and not to escape
    them.  If this breaks any specific clients, we will have to put in a workaround
    for the broken client perhaps.
    Fixes #8132.
    Beirdo committed Feb 15, 2011
  3. Slightly improved playback logging.

    Mark Kendall committed Feb 15, 2011
Commits on Feb 14, 2011
  1. Use totalLength and framesPlayed to generate duration/position for nu…

    …v decoder.
    Refs #9584.
    tralph committed Feb 14, 2011
  2. TV: Improved general logging.

    This ensures some significant points in playback startup are logged
    Mark Kendall committed Feb 14, 2011
  3. TV: Clear the contents of TvPlayWindow when playback is starting.

    This ensures we don't see the 'Please wait' etc popups when exiting
    playback and clears up some theme anomalies with the TvPlayWindow
    appearing behind, for example, the program guide in Graphite.
    Mark Kendall committed Feb 14, 2011
  4. TV: Hide and disable the main UI at the last moment.

    This consolidates some duplicated code in TV::HandleStateChange to
    ensure that the various actions required to hide and disable the main ui
    (and screensaver) are the last significant actions before we enter the
    main playback loop.
    Mark Kendall committed Feb 14, 2011