Commit Graph

46596 Commits

Author SHA1 Message Date
Axel Dörfler
59e6d9d2e2 launch_daemon: Maintain pending jobs for requirements.
* If a requirement cannot be launched, a job is now added to the
  requirement as pending job.
* If the requirement enters the launch queue at a later time, the
  pending job will be put there, too.
2015-11-28 14:00:36 +01:00
Axel Dörfler
236e68efdc launch_daemon: Check requirements before launching a job.
* They were only launched, but we didn't check if we can actually
  launch them.
2015-11-28 14:00:01 +01:00
Axel Dörfler
ea3e5d43d5 passwd: Fixed copy&paste error in error message. 2015-11-28 13:59:19 +01:00
Jérôme Duval
f9422dc81d x86_gcc2: add dependency on ssl libs on haiku.hpkg. 2015-11-28 10:06:46 +01:00
Jérôme Duval
e7e318fc73 haiku-x86: add a dependency on libssl and libcrypt 2015-11-26 18:58:14 +01:00
Automatic Committer
087cbdf98d Update pci.ids from pciids.sourceforge.net 2015-11-26 05:20:22 +01:00
Jessica Hamilton
d5449f12d4 app_server: add another missing dependency on freetype 2015-11-26 14:44:51 +13:00
François Revol
e3c95b5aa1 usb_disk: add icon for mobile phones
Add a match for my Kazam dumb phone, which is not very descriptive...
2015-11-26 01:17:24 +01:00
Jérôme Duval
c5c31f4118 haiku-x86/haiku-x86_gcc2: make some dependencies feature dependent. 2015-11-24 20:20:52 +01:00
François Revol
eff74a3387 usb_disk: use SD card and Memory Stick icons when found
Check for partial matches on the product_name string.

Tested with a USB card reader and an SD card.

Feel free to add icons for Compact Flash and Secure Media and more matches.
2015-11-24 14:30:48 +01:00
François Revol
6c51d2639b usb_disk: use CD icon for optical media
Tested with a CD drive and a USB adapter.
2015-11-24 14:28:30 +01:00
François Revol
ce27a0cc0a usb_disk: add some icons
- CD
- SD
- MemoryStick
2015-11-24 12:26:10 +01:00
Rene Gollent
a9aa59ef7c Debugger: Fix #12499.
DebugReportGenerator/UiUtils:
- When traversing the value node graph, detection of the case of
  an address type with a compound child wasn't taking type modifiers
  into account, leading to it sometimes not traversing down to members
  when it should, and consequently not reporting those members in a debug
  report.
2015-11-23 22:31:01 -05:00
Axel Dörfler
9b9e7ec808 E-mail: Converted auto config window to layout API.
* It still doesn't work correctly yet again, though; the servers cannot
  be configured there.
* I'm leaning towards removing the server configuration there, as they
  can easily changed in the add-on preferences from the same preferences
  application; the way it was done was pretty much a hack. Any hard
  feelings about this?
2015-11-23 21:50:42 +01:00
Jérôme Duval
69a973e2f7 screen_blanker: fix warning. 2015-11-23 20:48:15 +01:00
Jérôme Duval
2bc202c430 XHCI USB: Add port routing for Intel WildcatPoint LP USB.
* from FreeBSD.
2015-11-23 20:47:15 +01:00
Jérôme Duval
95c8163a16 Add Hangul and Hangul_Hanja keycodes for korean keyboards.
* map both keys on USB keyboards. Untested.
2015-11-23 20:04:22 +01:00
Jérôme Duval
3dd0c8198e PackageRules: use valid macro names in defines. 2015-11-23 18:16:08 +01:00
Simon South
dbf060a3f7 libroot: Add brk() and sbrk().
This commit replaces the placeholder implementation of sbrk(), which
operated on a process' heap, with real implementations of brk() and
sbrk() that adjust a process' program break.

* unistd.h: Add standard definitions of brk() and sbrk(); include
  stdint.h for intptr_t.
* thread.cpp: Recognize RLIMIT_AS and RLIMIT_DATA resource limits
  (both currently unlimited); order limit identifiers alphabetically.
* arch-specific.cpp: Remove sbrk_hook().
* malloc_debug_api.cpp: Remove sbrk_hook().
* unistd/Jamfile: Build brk.c instead of sbrk.c.
* unistd/brk.c: Add.
* unistd/sbrk.c: Delete (placeholder implementation).
* libroot_stubs.c: Remove sbrk_hook().
* libroot_stubs_legacy.c: Remove sbrk_hook().
* src/tests/.../posix/Jamfile: Build brk_test.c.
* brk_test.c: Add (simple unit test that demonstrates behaviour of
  sbrk()).

Signed-off-by: Jérôme Duval <jerome.duval@gmail.com>
2015-11-22 17:59:22 +01:00
Jérôme Duval
d8e8078b3f net_server: warning on delete of address of a reference.
* fixes #12244.
2015-11-22 11:51:56 +01:00
Jérôme Duval
b8c67b27cc haiku-x86_64: make some dependencies feature dependent. 2015-11-22 11:47:29 +01:00
Axel Dörfler
62eec60079 SMTP works again.
* The message to send the mails never made it to the add-on looper.
* Mail protocol threads now have names.
* Added a "public" BOutboundMailProtocol::SendMessages() call that sends
  itself a message (even the correct one this time).
2015-11-22 11:35:17 +01:00
Axel Dörfler
0295da8893 Mail: Set min size in prefs instead of some random number.
* Since min/max size of the menu had contradicting values at larger font
  sizes, the layout was confused.
2015-11-22 11:34:45 +01:00
Axel Dörfler
04f969a596 BWindow::MoveOnScreen(): Need to use inner frame for resize.
* This caused the window to grow each time.
* This was especially noticeable at applications that store their
  size on quit, and restore it on start.
* This fixes bug #12456.
2015-11-22 11:33:49 +01:00
Jérôme Duval
56a0f2b3be haiku-x86_64: add a dependency on libssl and libcrypto
* this should be feature dependent though.
2015-11-21 12:22:16 +01:00
Jérôme Duval
946163e318 ffmpeg: fix x86_64 build. 2015-11-21 12:01:01 +01:00
Jérôme Duval
af585d0361 pkgman search: Add --requirements option 2015-11-20 20:55:12 +01:00
Jessica Hamilton
08006f7c8f efi_gpt: properly fix block offset calculations for partition entries
In 2346363b, had corrected the offset writing to the disk, but missed
correcting the offset for reading from the entries struct.

Instead of writing a block, just write the single entry, simplifying
the offset logic considerably.
2015-11-20 20:26:45 +13:00
Adrien Destugues
856cc59e58 AVCodecDecoder: use swresample to interleave audio channels.
Some codecs will always output audio in planar mode no matter what we
request. This is the case for example with AAC used for youtube. We now
use swresample to convert from planar to packed format.

Note that since swresample does its own buffering, we could probably do
away with some of the code that handled buffering before, making the
audio pipeline simpler and faster.

Fixes audio in youtube, but now the video plays at 2x speed. It seems
something is wrong with the timestamps. Possible things to investigate:
* why do we use the packet dts instead of the pts from the frames anyway?
* the pts and pkt_dts are in "stream time_base units". We seem to assume
  microseconds for audio but this is probably not the case. Or did I
  miss where the conversion is done?
2015-11-19 22:53:22 +01:00
Automatic Committer
235725ef91 Update pci.ids from pciids.sourceforge.net 2015-11-19 05:20:23 +01:00
Julian Harnath
ff535a92ce app_server: declare jam dependecy for Layers to freetype 2015-11-18 14:58:47 +01:00
Julian Harnath
b0f4e518cd app_server: fix gcc4 build 2015-11-18 14:58:29 +01:00
Julian Harnath
718f352859 app_server: bitmap interpolation; fix out-of-bounds access
* Optimized code path for bitmap drawing with bilinear interpolation
  scaling was assuming that source bitmap is always at least 2 rows
  in size.

* Fixes #12469: in webkit, scaled 1-pixel-high bitmaps often occur.
  If the bitmap allocation is by chance aligned to a page end, access
  to the non-existant second row crashes app_server.
2015-11-18 14:40:17 +01:00
Julian Harnath
345d9bb4a2 test_app_server: fix build 2015-11-18 14:04:19 +01:00
Jessica Hamilton
823513263e WebPositive: fix count of pagesCreated when starting up.
With the new session restore code in WebPositive, it would
restore the session and then open an extra window on top, as
the pagesCreated counter did not add the new window(s) to the
counter, only new tabs.
2015-11-18 11:02:04 +13:00
Axel Dörfler
7125795f6a E-mail: Fixed initial window size.
* It did not take the height-for-width view into account.
* However, the explicitly set preferred size seems to be ignored.
2015-11-16 20:44:56 +01:00
Axel Dörfler
670cfb15a5 BWindow: lock the looper in some new methods.
* This makes it more convenient to call them from someplace else, and
  follows the design used in the rest of the implementation.
2015-11-16 20:43:20 +01:00
Axel Dörfler
67c3eeebdc Mail: sizing/placing cleanup.
* Don't set a default fixed font size - just use the default fixed font.
* The preferences and signature window no longer have a default size,
  and position, either. Instead, they are placed over the active window.
* Fixed spacing in the preferences window.
* Converted the signature window to use the layout API.
* Minor cleanup.
2015-11-16 20:39:47 +01:00
Axel Dörfler
65484549f0 libunwind: Fixed build warning. 2015-11-16 20:37:18 +01:00
Axel Dörfler
28da8a4c90 Mail: corrected spacing after window spacing change.
* The button panel shouldn't be indented at all.
* The header panel was intented twice, once by the surrounding layout,
  once by its own.
2015-11-16 20:35:04 +01:00
Julian Harnath
3c9d8d6460 app_server: fix race condition in alpha mask cloning
* Add a lock which is acquired when reattaching/regenerating masks,
  and also acquired for a cached mask before making a clone of it,
  to prevent the clone from having an inconsistent state in
  concurrent edge cases.

* Maybe fixes #12469
2015-11-15 22:05:26 +01:00
Jérôme Duval
ac7f52fc91 app_server: fix x86_64 build. 2015-11-14 19:37:59 +01:00
Jérôme Duval
81768f44e7 XHCI USB: include in the Haiku package, only enabled two devices
for now.
2015-11-14 19:37:59 +01:00
Adrien Destugues
894640da2d ffmpeg: recognize planar audio and request packed instead
* Our media kit is designed to work with packed audio: which means the
  samples from different channels are interleaved in a single stream
* Old ffmpeg versions also used this, but they now switched to the
  planar format, where each channel is stored separately.
* Fortunately, we can request ffmpeg to use the packed format. We
  actually already tried to do that, but the API for requesting a sample
  format has also changed.
* Finally, we didn't recognize the packed format reported by the codecs,
  which in some cases could lead to 16/32 bit mismatches on top of the
  planar/packed mixup.

Fixes audio with ffmpeg 2.8 (ticket #12460)
2015-11-14 19:22:26 +01:00
Julian Harnath
6b56f7d282 app_server: add a few missing std::nothrow 2015-11-14 16:09:54 +01:00
Julian Harnath
b54b3ae511 app_server: add a cache for AlphaMasks
* If the same shape alpha mask is set again and again, we now keep
  the rendered masks in a cache. On certain websites, WebKit sets
  the same shape for clipping hundreds of times, which uses a lot
  of time to render the masks.

* When a shape mask was generated, we put it into AlphaMaskCache.
  The constructor for ShapeAlphaMask is made private and a factory
  method is used for instantiation instead, which transparently
  looks up in the cache whether a suitable mask was already generated
  before (so the entire caching is encapsulated inside the AlphaMask
  class).

* When taking a mask out of the cache, we still create a new
  AlphaMask instance. However, the new instance will share the
  mask bitmap with the previously generated instance (aside from
  the rendering of their bitmap, AlphaMask instances are pretty
  lightweight). Shape masks are only seen as identical when
  their shape is the same, the inverse flag, and they have the
  same parent mask.

* Cache is limited to a fixed size of currently 8 MiB, using a
  simple random replacement scheme. An LRU scheme can be added in
  the future if necessary. Counting of bytes for the cache size
  includes parent masks of masks in the cache, even if the parent
  itself is not cached. A reference counter for "indirect" cache
  references keeps track of which masks are not part of the cache,
  but still need to be added to the cache byte size.

* For now, only for ShapeAlphaMasks, other mask types can be added
  as necessary.
2015-11-14 16:09:52 +01:00
Julian Harnath
10df15449b app_server: plug leak of layers when empty clipping
* If there is an empty clipping region (invalid clipping) for the
  current view, a new layer could still be started, but not ended
  anymore. That's because unlike begin layer, end layer is handled in
  _DispatchViewDrawingMessage (because it can do actual drawing)
  and this method checks whether the clipping is valid and bails out
  if it isn't.

* Add an exception for the AS_VIEW_END_LAYER command code to still
  process it even when the clipping is invalid. The layer itself
  can after all set a valid clipping later on when its command list
  is played back. And even if it doesn't, we still have to play it
  to make sure nested layers are cleaned up.

* Fixes the memory leak in #12460 where webkit creates
  said situation: it had a layer open and then the closing was
  ignored due to empty clipping. All subsequent layer calls created
  nested layers in that one, hundreds of them, and their BPictures
  contained bitmaps, quickly eating up and leaking hundreds of MiB
  in app_server.
2015-11-14 16:09:49 +01:00
Julian Harnath
0fab27a23e app_server: don't ignore invisible layers
* When a layer has opacity 0, we can't just ignore it, we still
  have to play back its picture, even if the drawing will never
  appear on screen. This is because there might be nested layers
  and if they don't get blended, their references are not released.
  Also, it can be argued that state changes in the layer should be
  applied even if the layer is invisible (if we ignore it there,
  it would be inconsistent with other layers).

  This edge case of invisible layers could be optimized further, but
  it is rare enough anyway, so this should do.
2015-11-14 16:09:47 +01:00
Julian Harnath
2193dcd799 app_server: plug DrawState instance leak, other minor fixes
* OffscreenCanvas was not deleting its DrawState. Found thanks to
  the allocation tracking feature in libroot_debug (thanks mmlr!)

* Also a missing nothrow and a missing ref release in an error case
2015-11-14 16:09:45 +01:00
Julian Harnath
bcc5cf7d29 test_app_server: fix use after free
* Caught with libroot_debug
2015-11-14 16:09:43 +01:00