In Playlist, whenever a move of items occured causing the
currently playing song to change its position, so :
1. Importing files (D&D for example) before its position
2. Removings files before it
3. Moving files before it
was causing the currently playing song to restart because
it was thinking a new entry was asked (it had a different
index number suddently).
Also adjusted the behaviour when you delete the currently
playing track.
Should fix ticket #6689.
* add Wcscoll() and Wcsxfrm() ICU locale backend
* provide implementations of wcscoll() and wcsxfrm() that are using
the respective methods of the locale backend
The actual xfreopen function is only relevant if O_BINARY != 0 and all
places invoking it are surrounded by if statements that are always
false if O_BINARY == 0. The compiler therefore stripped all the calls
out at the default -O2, but this obviously breaks down with DEBUG on.
The variable is used in the TRACE(), but that is only enabled for
DEBUG >= 2. This therefore avoids a warning on DEBUG=1 builds.
Inspired by patch in #8252 by Urias McCullough.
1. When in /boot, you couldn't go to the parent (which is fine by itself),
but the menu item wasn't disabled.
2. In Single Window Browsing, doing "Open parent" wasn't respecting that
setting and was opening new windows.
3. In filepanel, when navigating to Desktop folder, the "Go to parent" was
still proposed even though it would do nothing choosing it.
4. Opening a Pose in Single Window Browsing was repopulating the menus and
putting the shortcuts again. That was an issue if Navigator bar was used
since it conflicts with its shortcuts.
Fixing ticket #6851.
In an earlier commit, I removed a memleak, but it was covering more cases
than intended. Thanks to Alex Wilson's insight, it seems that simply removing
the check is better (since that check is essentially redone in FSMoveToTrash()).
Rather than checking if "window" AND "view" are NULL, check if
"window" OR "view" are NULL, since neither could be null and deferenced later
on.
From the Matrox accelerant, it seems that such event occurs when a
"Workspace switch, screen prefs change, or overlay app shutdown occurs"
Might be interesting to revisit tickets related to intel accelerant.
CID 205.
BVolume::BlockSize() might return a negative value (error code) and it
was passed as parameter of CalcItemsAndSize() as a size_t (unsigned).
Thus the check for an error code failed.
CID 4171.
The HIDReportItem reads 32 bit chunks from the report buffer. To avoid
having to check the remaining buffer space on each extraction, we pad
the buffer so it is always valid to read 32 bits at a time. Also add
a comment explaining why we do it that way.
Thanks to Johannes Anderwald for pointing out the potential out of
bound access!
The dynamic_cast was called twice, and the assert was
done on the first attempt. Now it just cast once, assert on this
and pass it further as before.
CID 3122.