Add a non-const compatibility BRoster::Launch() call

BartLAuncher needs this one...
Mandelbrot: out-of-bounds access to the palette.

Fixes #8812, #10920

At the edge of the fractal, we can get a value between 0 and the number
of iterations. Since the palette is only 256 colors, this was previously
using random colors for any setting with more than 256 iterations, and
ended up crashing the program with very high numbers.

The palette is now looped, which avoids the crash. Looping the palette
allows finer details at the higher zoom levels to be provided using the
full color range, however with some of the palettes this will look quite
noisy.
Add sys/ucontext.h

* Move ucontext_t and mcontext_t there as that's where POSIX says they
should be.
Revert "Add sys/ucontext.h"

This reverts commit 6ddf93bfbec1ecec76cf119c50327f93f6d4fef8.

As pointed out by Ingo, those were moved to sugnal.h in the latest issue
(issue 7) of the POSIX spec. Sorry!
Add arm_none_eabi_{binutils,gcc} packages.
ImageRules: Fix issues where file names may contain parens

Parentheses in target names are considered by Jam to mean an archive
member. We have to explicitly use the M selector to keep that part.

Fixes #10378 (certain keymaps missing on image).
Have the haiku package provide libstdc++ for x86_gcc2.

Until we split this out, let's have the package declare it so we can
start adding requires to the ports.

Fixes installation of smpeg, libusb.
dvb.media_addon: Code cleanup and some coding style.

- Remove use of now superflous media_header_ex structure.

- Respect 80 char line limit and indentation rules. Coding style only applied
  to functions raw_[audio|video]_thread, rest of the class may need some more
  cleanup.

- No functional change intended.
dvb.media_addon: Trigger loading of media plugins.

- This is the workaround as described in the bug report #11018.
- I would have preferred to place this workaround in DVBMediaAddon::InitCheck()
  as this method can return a status code but unfortunately it is never called.
dvb.media_addon: Remove superflous init check.

- This init check prevented the MediaStreamDecoder from setting up an input
  format. The values the init check is based on are initialized by the first
  call to BMediaDecoder::SetTo() as described in the BeBook ("If you use the
  empty form of the constructor, you'll have to call SetTo() to establish the
  format to be decoded before calling Decode()"). But MediaStreamDecoder
  doesn't provide a public way to call BMediaDecoder::SetTo() first.
  There are at least two possible solutions to remedy this situation:

  1. Remove the init check
  2. Add a public way to call SetTo()

  The first solution was chosen for the following reason: Least amount of
  code change needed as it is an implementation detail so no client code has
  to be touched.
  The second solution might make sence when you want to stick to the BeBook
  where a clear distinction between SetTo() and SetInputFormat() is made, but
  as the current MediaStreamDecoder implementation doesn't stick to the BeBook
  anyway there is less need to add another method at this time.
dvb.media_addon: Stop changing format on every video frame.

- Due to comparing the wrong fields with one another the dvb.media_addon called
  ChangeFormat() on every new video frame.
- Also remove a duplicate print statement.
FFMPEG Plugin: Calculate media_header.size_used field

- This field is needed by the dvb.media_addon to detect a format change so
  fill it with the correct value.
- Updated documentation accordingly to reflect reordered function calls and new
  assumptions based on the function call ordering.
FFMPEG Plugin: Fix video start_time handling

- I misinterpreted the semantics of reordered_opaque. I thought it would
  establish the correct relationship between the start_time returned by
  GetNextChunk() and the next video frame successfully decoded. But for this
  to work reordered_opaque expects to be filled with presentation time stamps.
  A series of presentation time stamps may be jumping back in time due to the
  presence of B-frames. The decoded frame presentation time stamps series would
  then be ordered in a monotonically increased way.
  But actually GetNextChunk() always returns monotonically increasing start
  times. Mapping this behaviour to FFMPEG's expectations means labeling those
  start times as decoding time stamps (dts). Though for those start times to be
  related to the correct decoded video frames you have to assign the start time
  with the AVPacket containing the data to be decoded.

- This commit finally makes DVB video playback working for me with the TV app.
  Though no audio yet.

- The documentation was updated accordingly.
FFMPEG Plugin: Fix video start_time generation.

- Ensure that start times are increased monotonically for video formats that
  contain B-frames, too, as expected by the BMediaDecoders.
  Previously start times were returned that seemed to go back in time for
  videos containing B-frames.
  Tested with resolutionchange.mpg (\see http://samples.ffmpeg.org/MPEG2)
  Note: Even though start times aren't going back in time anymore there are
  times where two consecutive start times are equal. This would need more
  research once this exposes a bug in a real application. Further more this
  might seem like a new bug, but before this commit the equal start times would
  have simply some different start time[s] in between. So at most this is the
  same bug just wearing new clothes :)

- Documentation updated accordingly.
Tracker: unchecked return value, CID 602465

Check that refs is not NULL and that refs->FindData() succeeds.

Also, explicit NULL check
Tracker: Fix 3 copies, CID 609040-CID 609042

strcpy() => strlcpy()
Tracker: Fix dereference after NULL, CID 601541

_TrackerLaunchDocuments() dereferences refs to copy it, so, we need
check that it isn't NULL first.

Also a few style fixes.
* Name params consistent with TTracker class methods
  ref, message => appRef, refs
* Use NULL instead of 0 for NULL pointer.
Tracker: check if widget == NULL, CID 600509

Add a few helpful comments too.
Tracker: fix memory leak, CID 600996

We now only create the BString if we're going to put it in the list.
Tracker: fix NULL dereference