Commit Graph

46629 Commits

Author SHA1 Message Date
François Revol
747e0ba247 googlefs: typo 2015-11-08 04:48:42 +01:00
François Revol
5aeaaebad9 googlefs: fix parsed urls
we now get relative URLs it seems...
2015-11-08 04:48:40 +01:00
François Revol
02487f3c4b googlefs: fix parsing 2015-11-08 04:48:37 +01:00
François Revol
26b35e649f googlefs: force disabling HTTP redirection from Google
We don't really handle HTTP REDIRECT...
2015-11-08 04:48:34 +01:00
François Revol
49d3cc2a78 googlefs: error handling
Damn this code is ugly!

Also dump the header we get to /tmp
2015-11-08 04:48:31 +01:00
François Revol
25472bc40a googlefs: update default Google server 2015-11-08 04:48:28 +01:00
François Revol
c518435bb1 VFS: pass correct vnode to fs calls in default get_vnode_name
The opendir and closedir/free_dircookie hooks were called with
mismatched vnode. It seems only googlefs is actually affected by this,
since all other fs without a get_vnode_name just don't are about the
passed vnode arg to closedir and free_dircookie.

Now I should really get some sleep!
2015-11-08 04:32:57 +01:00
François Revol
8f4a653ca6 VFS: typo 2015-11-08 04:32:57 +01:00
Jonathan Schleifer
93bcaf3650
arm/arch_exceptions.S: Replace spsr_all with spsr
After a quick look at binutils, they seem to be equal, however, Clang
does not accept the _all one.
2015-11-08 00:59:18 +01:00
Jonathan Schleifer
15d594cccd
ARM: Add __aeabi_memset and __aeabi_memmove alias 2015-11-08 00:54:32 +01:00
Jonathan Schleifer
d8548e00aa
Fix some more type mismatches with std::{min,max} 2015-11-08 00:44:18 +01:00
Jérôme Duval
6c4cca34c2 glibc: replace extern __inline with __extern_always_inline for x86.
* also update __atan2l for x86, update __FAST_MATH sections.
2015-11-08 00:38:20 +01:00
Jérôme Duval
b49dd60c46 Drop namespace std after 95d4ed6778. 2015-11-08 00:38:19 +01:00
Axel Dörfler
7406866340 launch_roster: The beginnings of a launch_daemon control tool. 2015-11-08 00:09:26 +01:00
Axel Dörfler
b0ecbc13f0 launch_daemon: Refactored some message handlers, more info.
* The info getters will now add a lot more info.
2015-11-08 00:09:26 +01:00
Jonathan Schleifer
c7624537a3
ARM: Alias __aeabi_memcpy to memcpy 2015-11-07 23:11:14 +01:00
Jonathan Schleifer
456150599a
Add __clang__ to a few #ifdefs 2015-11-07 23:02:53 +01:00
Axel Dörfler
5860caae39 launch_daemon: Added basic ability to stop/start jobs via API.
* Stopping a job is very simplistic right now, and will have to be
  extended considerably, probably with its own job.
2015-11-07 21:58:12 +01:00
Axel Dörfler
d8c022250d BMailAccountSettings: use BPathFinder.
* This allows to put add-ons in non-packaged folders, too.
* Also, Set{In|Out}boundAddOn() only ever looked in the system dir.
2015-11-07 20:55:14 +01:00
Jonathan Schleifer
55de0addd5
arm/arch_string.S: Only use sane insns for Clang 2015-11-07 18:29:50 +01:00
Jonathan Schleifer
ed6dfed2a0
Fix a type mismatch for std::min() 2015-11-07 18:16:40 +01:00
Jonathan Schleifer
71e0324992
Move new / delete kernel_cpp.h -> kernel_cpp.cpp
new and delete may not be defined as inline, as Clang loudly complains.
The same is true for static.
2015-11-07 18:16:23 +01:00
Jonathan Schleifer
b310316956
Fix arm/arch_string.S for Clang 2015-11-07 18:08:01 +01:00
Jonathan Schleifer
95d4ed6778
Add missing "using std::nothrow" 2015-11-07 18:08:01 +01:00
Humdinger
ad926b253a Improve/fix tab view layout as discussed
See http://www.freelists.org/post/haiku-development/Unifying-visuals-of-BTabView-usage

Besides the tab bar going the full width of the window, also some
layouting tweaks to several apps and prefs.

Still missing: the first (and last) tabs in the tab bar should be inset by
B_USE_WINDOW_SPACING so the controls in the tab view line up nicely.
I think I remember stippi wanting to look into it... :)
2015-11-07 17:40:24 +01:00
Humdinger
3c5208e439 Improve/fix layout
Some tweaks to the layout of apps/prefs in the course of using
B_USE_WINDOW_SPACING.
2015-11-07 17:40:22 +01:00
Humdinger
c8325bb7d7 Improve layouting of Expander
Especially actually hide the content's scroll view, which
otherwise would peak out if the B_USE_WINDOW_SPACING would
ever be increased.
2015-11-07 17:40:20 +01:00
Humdinger
744a39273b Use templatized version of BLayoutBuilder
...also more B_USE_WINDOW_SPACING
2015-11-07 17:40:18 +01:00
Humdinger
d0ac609964 Use B_USE_WINDOW_SPACING
Use B_USE_WINDOW_SPACING as inset from contents to window border.
Some whitespace cleanup.
2015-11-07 17:40:16 +01:00
Axel Dörfler
d5607aa971 SMTP: properly use const, and extern "C".
* This fixes having it picked up in the mail_daemon. That shouldn't have
  worked in the last three years...
2015-11-07 17:07:06 +01:00
Axel Dörfler
5ab027fdc9 Sudoku: use the layout API.
* This removes the CenteredViewContainer class, as it is no longer
  being used.
* However, it also removes its functionality, ie. the Sudoku view now
  fills the complete window (even without any borders), again.
2015-11-07 17:07:03 +01:00
Axel Dörfler
2e14f933e5 Sudoku: minor cleanup. 2015-11-07 17:07:01 +01:00
Michael Lotz
c869b2bb07 BPathMonitor: Remove unused headers, some whitespace cleanup. 2015-11-07 09:55:04 +01:00
Michael Lotz
8599f4b330 BPathMonitor: Lock on incoming node monitor messages.
The lock was only acquired when paths to watch were added or removed,
protecting the data structures against concurrent modification due
to addition/removal of entries by the API user.

Locking is also required for node monitor messages since these can
trigger the data structures to be modified (due to recursive watching
and new directories becoming available or due to resyncing of modified
ancestor chains).

Previously it was possible to corrupt the data structures when node
monitor messages were received while still starting to watch a directory
structure. This was especially likely in the case of watching devfs
directories, as accessing these can trigger device scanning which in
turn could possibly add new device entries. Either the path monitor
looper or the API user would then trip over the corrupted data
structures.

Probably fixes #11280. Although I was only able to reproduce crashes
on the API side, corruption of the hash tables and corresponding endless
loops are quite plausible.

Possibly also fixes #12412 if the input_server was in the process of
starting to watch entries. It's hard to tell due to the lack of a back
trace but would fit the crashes I was able to reproduce with a synthetic
test case.
2015-11-07 09:52:20 +01:00
Simon South
75c31ae28d system: Build using public elf.h header
Reduce duplication of code by

* Removing from elf_common.h definitions available in os/kernel/elf.h
* Deleting elf32.h and elf64.h
* Renaming elf_common.h to elf_private.h
* Updating source to build using public and private ELF header files
  together

Signed-off-by: Jessica Hamilton <jessica.l.hamilton@gmail.com>
2015-11-07 11:49:56 +13:00
Axel Dörfler
e2f83cbd6b launch_daemon: Monitor teams, and restart services.
* Services that end are now automatically restarted.
* However, this is very basic at the moment, there is no throttling,
  and no support for shutting down the system.
2015-11-06 22:50:05 +01:00
Axel Dörfler
d8c0972a81 launch_daemon: Added "setting" condition.
* Moved the mail_daemon to the user startup, and start it only if
  enabled in the settings.
2015-11-06 22:49:17 +01:00
Axel Dörfler
c2f71fa688 launch_daemon: give the main worker thread a different name.
* It's now called "main worker" instead of just worker.
2015-11-06 22:49:10 +01:00
Axel Dörfler
3282b758b0 launch_daemon: Add API to get information on jobs.
* Ie. a listing of all targets/jobs, as well as specific (basic) info
  on each.
* Also added a bit of optional debug output.
* Moved translating the path to launch time -- we should take the job's
  environment into account here at some point.
2015-11-06 22:47:56 +01:00
Automatic Committer
7e45dd1057 Update pci.ids from pciids.sourceforge.net 2015-11-05 05:20:22 +01:00
Michael Lotz
44f5830503 BLocker: Make misuse warning more useful.
Also print the locker sem (for manual name lookup) and the involved
threads. It was also missing the line terminator which messed up the
following output.

Also fix a typo in a comment.
2015-11-04 00:11:17 +01:00
Michael Lotz
1cffe0dc51 BLocker: Fix recursive count for "unusual" use cases.
Since a BLocker can be unlocked from other threads than the one holding
the lock, it can also be further unlocked even when already unlocked.
This caused the recursive count to become negative. The first lock then
needs to reinitialize the count to 1 for the lock balance to work again.

Just incrementing the negative recursive count lead to it never
counting back down from one to zero in the unlock case, which made the
BLocker impossible to unlock.

This makes the Haiku BLocker behave exactly like the BeOS one, including
the negative recursive count and reinitialization, as evidenced by its
debugging features showing the internal counts.

Alternatively to reinitializing the recursive count it could be
prevented from going below zero in the first place, but I don't see why
we should deviate from BeOS there while allowing its awkward unlock
behaviour.

This makes some more exotic use cases work like the BGLView <-> SDL
combination that previously would always just hang. While these abuses
should be reviewed/corrected, just hanging the BLocker doesn't seem
useful.
2015-11-04 00:11:16 +01:00
Michael Lotz
271f422a92 listsem: Clean up format strings to use format macros.
Fixes printing values on x86_64.
2015-11-04 00:11:16 +01:00
John Scipione
f672379ca1 Tracker: Redraw info window when file path changes
The hard work was already being done, we just had to redraw to get the new path.

Fixes #12437
2015-11-03 11:25:04 -08:00
Simon South
6abbd31061 unittests: Build copied BAppTest files
This adds to the "unittests" target a dependency on the
"AppTestRunApp3a" (etc.) files meant to be copied as part of the
BApplication test suite so they are generated when "jam unittests" is
run.

* TestsRules: Add "UnitTestDependency" rule.
* testapps/Jamfile: Make unit tests depend on copied files.

Fixes #12441.

Signed-off-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
2015-11-01 14:19:04 +01:00
Adrien Destugues
8d314f692b FireWire: gcc5 compatibility.
Fixes #11991.
2015-11-01 14:13:15 +01:00
Adrien Destugues
4e9575976e HaikuWebkit 1.4.13 package.
* There is a small API change, and only the x86_gcc2 package was
  updated. This means the x86 and x86_64 builds are broken until someone
  updates the packages.
* Fix several small bugs, the most important one being that cookies are
  written to disk again.
2015-10-31 09:01:23 +01:00
Humdinger
ec54f923ef Improved description of welcome and userguide packages. 2015-10-30 10:16:52 +01:00
Automatic Committer
786e713583 Update pci.ids from pciids.sourceforge.net 2015-10-29 05:20:25 +01:00
Simon South
874e9521b2 x86_64: Glue code: Keep stack 16-byte-aligned
Signed-off-by: Jérôme Duval <jerome.duval@gmail.com>
2015-10-28 21:24:34 +01:00
Jérôme Duval
6c009cde0b kernel: avoid dprintf messages for known header types we don't use.
* fix a typo in runtime_loader/count_regions().
2015-10-28 21:21:56 +01:00
Simon South
1a28be27e8 Fix unittests build.
Signed-off-by: John Scipione <jscipione@gmail.com>
2015-10-27 10:28:36 -07:00
Simon South
d5447eb9c0 runtime_loader: Do not assume executable has dynamic segment
This prevents a crash when loading a statically linked executable.

Fixes #12287.

Signed-off-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
2015-10-26 21:23:30 +01:00
Simon South
078b88b12d runtime_loader: Randomly position only relocatable code
The use of an unreliable test for relocatability effectively broke
runtime_loader's support for non-position-independent executables, as it
would insist on randomly positioning these files' segments in memory
anyway causing the program to quickly crash.

With this change runtime_loader uses the object type specified in the
file's header to determine whether its segments can be safely relocated,
restoring support for non-PI executables.

Fixes #12427.

Signed-off-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
2015-10-26 21:19:25 +01:00
Murai Takashi
1e6dd3feed Fix GCC 5 maybe-uninitialized warnings.
Signed-off-by: Adrien Destugues <pulkomandy@pulkomandy.tk>

Fixes #12020
2015-10-26 21:13:24 +01:00
Murai Takashi
949cf6ac85 Fix GCC 5 build.
* Add -fgnu89-inline flag for libroot/posix/glibc
* Change __GNUC__ == 4 to __GNUC__ >= 4

Signed-off-by: Adrien Destugues <pulkomandy@pulkomandy.tk>

Fixes #11990, most of the changes had already been done.
2015-10-26 19:05:24 +01:00
Jeroen Oortwijn
fe055bf343 change html output to confirm to XHTML Strict
Several errors in the html output caused WebPositive to not render
the file completely.

Signed-off-by: Adrien Destugues <pulkomandy@pulkomandy.tk>

Fixes #12387.
2015-10-26 18:36:50 +01:00
Adrien Destugues
4286d20b87 intel_extreme: PVS 1765-6: only use bool in conditions
* Style fix, no functional changes.
2015-10-26 18:36:48 +01:00
Adrien Destugues
9e80618520 hda: PVS1619-21: "unsigned < 0" comparisons
* Probably harmless, the overflow on the other side was already checked.
2015-10-26 18:36:45 +01:00
Axel Dörfler
5f2abaf7df launch_daemon: Added network_available event & condition.
* Not yet tested.
2015-10-25 14:41:17 +01:00
Axel Dörfler
2e17b6504f BLaunchRoster::ResetStickyEvent() added.
* Used to unflag sticky events that already have been triggered once.
2015-10-25 14:41:17 +01:00
Humdinger
7c088080ec Split the big userguide package into one per language.
Splitting the almost 70 MiB userguide package into one package per
language at ~4.5 MiB saves time and space when installing/updating.

At the online tool that manages the user guide pages, we have to
make changes to fall back to the online page if you try to switch
to a language you haven't installed locally. See #9322.
2015-10-25 10:20:51 +01:00
Adrien Destugues
96f94789c4 input_server: fix debug build. 2015-10-23 19:31:39 +02:00
John Scipione
c06aefa0ee HaikuDepot: Reset package state on failure
* Save the package state before attempting to install/uninstall the package.
* In the case of failure set the package state back to what it was.
* Use the synchronous version of BAlert so that the package state won't
  change until the user clicks the Close button on the dialog.

Fixes #10838
2015-10-22 10:44:27 -07:00
John Scipione
ae557b7951 HaikuDepot: Style fix, whitespace only 2015-10-22 10:42:21 -07:00
John Scipione
6075d7d09d HaikuDepot: Indentation style fix 2015-10-22 10:27:58 -07:00
John Scipione
95ad2c7563 HaikuDepot: Remove extra ; 2015-10-22 10:27:27 -07:00
John Scipione
7cc5d1688d HaikuDepot: Set B_STOP_ALERT on fatal error BAlerts 2015-10-22 09:57:29 -07:00
Automatic Committer
6d574ebd1b Update pci.ids from pciids.sourceforge.net 2015-10-22 05:20:23 +02:00
Augustin Cavalier
4cb401968e Tracker: Remove needless NULL check before delete.
Thanks John!
2015-10-21 12:55:07 -04:00
Augustin Cavalier
c746acc289 Tracker: Delete own BTextWidgets in BPose destructor.
Fixes a memory leak, and #12393.
2015-10-21 12:01:04 -04:00
John Scipione
d4e348b08e Mail: Implement select all hook for subject
This allows the Cmd+A key shortcut to select all text on
the subject control.  You could already Select All from the
View menu but this is more convinient.

Fixes #12361
2015-10-19 14:13:30 -07:00
John Scipione
b32f138231 Mail: Make AddressTextControl B_NAVIGABLE 2015-10-19 14:13:29 -07:00
John Scipione
a0242c53e2 Mail: Update background color to use setting
Fixes #12360
2015-10-19 14:13:28 -07:00
Axel Dörfler
d9bb9513c5 launch_daemon: "file_exists" now resolves $HOME, and '~'. 2015-10-19 21:22:21 +02:00
Axel Dörfler
4e8fc45146 Deskbar: converted to BServer. 2015-10-19 21:21:56 +02:00
Axel Dörfler
cfe6baf62f cddb_daemon: renamed to cddb_lookup, moved to /src/bin.
* It's now a standard command line tool that is launched automatically
  via the launch_daemon whenver a volume is mounted.
2015-10-19 21:21:21 +02:00
Axel Dörfler
a1406a012e launch_daemon: Increased the number of worker threads.
* Since we're disk bound, and not CPU bound, it doesn't make much sense
  to restrict the number of threads on the number of CPUs.
* It's still not completely independent of the number of CPUs now,
  though: we'll have 3 * CPU count worker threads.
2015-10-18 13:11:26 +02:00
Axel Dörfler
4ae4b3ff57 launch_daemon: Fixed the remaining "operation not allowed" bug.
* This was the harmless part: a job was been requeued that already was
  being launched.
* I was already aware of this one, and only accidentally stumbled over
  the non-harmless case in the JobQueue code when I tried to fix that
  little issue... (ie. never ignore warnings, even if you think you
  know what's going on).
2015-10-18 13:11:26 +02:00
Axel Dörfler
c80084b025 JobQueue: fixed incorrect requeuing.
* A dependent job was requeued even if it wasn't part of the queue
  before. The code relied on dependent jobs being already enqueued;
  but that cannot be guaranteed.
* If a job failed, its dependent jobs are now also set to failed, so
  that they won't be requeued at a later point.
* This caused some of the "Launching xxx failed: Operation not allowed"
  messages in the boot process. Those actually weren't harmless, and
  could mess up the natural job order.
2015-10-18 13:11:26 +02:00
Jérôme Duval
86e23e81b0 midi_server: fix debug build. 2015-10-18 11:42:03 +02:00
Jérôme Duval
d43720add9 Switch to tiff4 as system dependency. 2015-10-18 10:00:02 +02:00
Jérôme Duval
5b3c88f1da Switch to ncurses 6 as system dependency.
* remove traces from libpng (as opposed to libpng16).
2015-10-18 00:44:30 +02:00
Axel Dörfler
0f3fcbe437 launch_daemon: Added volume_mounted event.
* Triggered whenever a volume is mounted (surprise!).
* There is no way to specify which volume you are interested in for now
  (if someone knows a good use case, I'd be willing to add that,
  though :-)).
2015-10-17 14:24:57 +02:00
Axel Dörfler
7cd19b7e5c launch_daemon: Implemented sticky events, and registration.
* Sticky events are events that keep their signal raised, ie. even if
  a job is initialized afterwards, it will still be triggered.
* Consolidated naming for external events.
* Events are now registered once they are actually being used. This
  allows them to allocate the resources they need to do their thing.
2015-10-17 14:16:26 +02:00
Axel Dörfler
5ab2b1457b BJob: Added SetState() method. 2015-10-17 14:16:26 +02:00
Axel Dörfler
e96f5c3330 launch_daemon: Renamed RegisteredEvent to ExternalEventSource.
* With events being registered, this proved to be confusing, and it also
  helps to differentiate between event objects within the daemon, and
  events coming from external sources.
2015-10-17 14:16:25 +02:00
Axel Dörfler
1034412d56 notification_server: Fixed include order. 2015-10-17 14:16:13 +02:00
Alexander von Gluck IV
97aa078ef4 intel_extreme: Intial work for ValleyView support
* No impact to non-ValleyView chipsets
* Bump some register locations for VLV
* Only have HDMI port to test with on my ValleyView GPU
  and our driver seems to be missing all HDMI and
  sideband functionality.
* As ValleyView chipsets seem to be UEFI only, we don't
  have VESA fallback, so this shouldn't cause regressions.
  (unless we get UEFI framebuffer support)
2015-10-15 23:39:31 -05:00
John Scipione
e01bbf955f Tracker: Fix issue with vertical scroll bar border
This issue only manifested itself when the navigation toolbar was shown.

The scrollbar appeared to have no border while the rest did. This issue
manifested when the scrollbar insets were adjusted in hrev49654. The
scroll bar insets were really hiding the bug underlying bug though.

I'll try to explain what was happening and how I fixed it. The PoseView
container, called BorderedView, was showing its top border when the
navigation bar was hidden, and hiding its top border when the navigation
bar was shown.  This (almost) worked because the menu bar provided a
bottom border while the navigation toolbar didn't. However hiding
BorderedView's top border also hid the scroll bar border.

My solution was to draw a bottom border on the navigation toolbar and
then remove the top border from BorderedView unconditionally. So either
the menu bar or the navigation toolbar provides a bottom border and the
BorderedView has no top border.

Fixes #12392
2015-10-14 22:29:52 -07:00
Automatic Committer
e345b60486 Update pci.ids from pciids.sourceforge.net 2015-10-15 05:20:21 +02:00
Alexander von Gluck IV
fc20d30ed6 Notification Server: Build fix, missing stdlib.h for EXIT_ 2015-10-14 18:06:32 -05:00
Alexander von Gluck IV
c6475ba15c ahci: Minor trace cleanup; No functional change 2015-10-14 16:48:16 -05:00
Axel Dörfler
b5e496b575 notification_server: Converted to BServer, launch on demand. 2015-10-14 22:24:19 +02:00
Axel Dörfler
8f27961801 midi_server: Converted to BServer, launched on demand. 2015-10-14 22:24:01 +02:00
Axel Dörfler
83f803c6ff midi_server: cleanup.
* Style cleanup.
* Moved documentation to source file.
* Improved variable/member naming, added '_' prefix for private methods.
2015-10-14 22:23:28 +02:00
John Scipione
8a3ae7a49d Restore the BMenuField label background
Highlighting was added in hrev45983, stopped working in hrev49614, specifically
d891923650.

Add comment to explain what is happening and hopefully deter this from being
removed again in the future.

Fixes #12359
2015-10-14 11:06:55 -07:00
Alexander von Gluck IV
2f6a9c685a ahci: Fix delays with large numbers of empty ports
* Properly flag missing devices
* Do away with shifts and define ssts and sctl masks
* Tested working on 6 different systems with a
  combination of drive configurations.
* Empty media on AHCI devices still cause port change
  storms. (the issue that was attempted fixed in
  5584c22fdd)
2015-10-14 00:06:27 -05:00
Axel Dörfler
37e5a03660 print_server: Converted to launch_daemon, run on demand only.
* Seems to work fine, although it should probably also be triggered when
  there are still jobs in the queue -- someone more knowledgeable might
  want to chime in here, please :-)
* If this turns out to be problematic, we can just drop the "on_demand"
  job config again.
2015-10-13 16:37:38 +02:00
Axel Dörfler
e048384d77 launch_daemon: launching on demand now actually works.
* Was broken in two ways: if only the shortcut "on_demand" was used,
  the event didn't get created at all due to a bug in
  Events::AddOnDemand().
* Furthermore, _LaunchJob() always triggered a demand, but it should
  only do this when not called from a target.
2015-10-13 16:36:58 +02:00
Axel Dörfler
74b10f8e82 print_server: No need to build on BeOS. 2015-10-13 16:36:19 +02:00
Axel Dörfler
6c3e186ceb print_server: minor coding style cleanup. 2015-10-13 16:35:47 +02:00
Dario Casalinuovo
46098852b4 Revert code which got mixed in 782ebbdf93
* Sorry about that.
2015-10-12 13:20:31 +02:00
Dario Casalinuovo
782ebbdf93 Cortex: Check retrieved timesource, fixes #11391 2015-10-12 13:07:53 +02:00
Adrien Destugues
1388211503 Implement stat.st_rdev for block and character devices.
* devfs: set st_rdev to the inode number of the node being queried. This
  may not be the best thing to do, as it does not match what is set in
  st_dev for other files, so it can't be used to find which device
  stores a particular file. I'm not sure if st_rdev is actually used that
  way anywhere, however.
* vfs: do not clobber st_rdev with -1 for "special" (device) files.
  Refactor the code a little so setting the common attributes is done in
  a single place.

Fixes #12390.
2015-10-11 18:26:21 +02:00
Jessica Hamilton
fcad732fcd Revert "makebootable: Add in needed GPT libuuid on cross-platform builds"
This reverts commit 832f090ea8.
2015-10-08 23:37:28 +00:00
Jessica Hamilton
f217aa879b gpt/Header.cpp: also disable UUID code when _USER_MODE defined.
src/tools/makebootable defines _USER_MODE, which we can check
for in gpt/Header.cpp to remove the dependency on libuuid, as
makebootable only needs read-only access to partition maps
anyway.
2015-10-08 23:37:28 +00:00
Jessica Hamilton
f052cd0cce gpt partitioning: properly delete partition entries.
Previously, deleting a partition was lazy and only changed
the partition type to an invalid UUID, and would still
show up as a partition in many partitioning tools.
2015-10-08 23:37:27 +00:00
Simon South
5df5223b4b kernel: Don't send SIGTTOU if calling thread is blocking it
POSIX requires SIGTTOU to be sent to a process in a background process
group that tries to change the foreground process group ID associated
with its controlling terminal, unless the process is ignoring SIGTTOU or
the calling thread is blocking it. Previously the code checked the
former condition but not the latter, making it possible for calls to
tcsetpgrp() to get stuck in a loop and never return.

Should fix #3417.

Signed-off-by: Augustin Cavalier <waddlesplash@gmail.com>
2015-10-08 19:25:31 -04:00
Simon South
338fd73327 Debugger: Fix TRACE_LOCALS statement.
- Correct a TRACE_LOCALS statement in ValueWriter.cpp and update it to
  match the current definition of ValuePieceLocation.

Fixes #12411.

Signed-off-by: Rene Gollent <rene@gollent.com>
2015-10-08 18:59:54 -04:00
Rene Gollent
c5271e6b51 makebootable: Fix various build problems.
- Add jamfile for a build variant of libuuid.
- Adjust the build version of makebootable to link to that instead, as it would
  otherwise link in the target platform's version of libuuid_kernel, which
  wasn't necessarily compatible with the build platform's objects (i.e. when
  building a 32-bit Haiku image on a 64-bit host OS), and would consequently
  fail.
2015-10-08 18:57:21 -04:00
Alexander von Gluck IV
832f090ea8 makebootable: Add in needed GPT libuuid on cross-platform builds 2015-10-08 00:09:30 -05:00
Automatic Committer
228e5c39f5 Update pci.ids from pciids.sourceforge.net 2015-10-08 05:20:22 +02:00
Jessica Hamilton
0baf9d8d8d gpt partitioning: generate uuids for disks & partitions.
Also added src/libs/uuid to tree, sources adapted from
http://git.kernel.org/cgit/fs/ext2/e2fsprogs.git/tree/lib/uuid.
2015-10-08 02:12:14 +00:00
Jessica Hamilton
2346363b23 gpt partitioning: fix writing of partition entries.
When writing an individual entry to disk, the offset of the entry
was omitted, which resulted in entries not block-aligned to
overwrite previously valid entries. This in turn resulted in the
stored entries CRC no longer matching what was on disk, causing
the partitioning system to fail to identify it as a valid GPT
when read from disk later (e.g. after a reboot).

E.g. if the first entry is the ESP (which it typically is), and
then the second being an entry for a BFS partition, updating the
BFS partition entry would overwrite the entry for the ESP, thus
corrupting the entries table.
2015-10-08 02:12:13 +00:00
Alexander von Gluck IV
a1ed294ff9 AHCI: Rework port reset and control
* Move to more standardized functions matching AHCI spec
* Don't perform unnecessary double port resets
* Begin implementing a software reset to try first per spec.
  Software reset needs more work, falls through to port reset
  for the moment which is stable.
* Don't duplicate ATA defines, use what we already provide.
* Tested working on VirtualBox 1-16 AHCI ports, Intel C200,
  and AMD FCH.
2015-10-05 19:46:03 -05:00
Automatic Committer
8f5fd0d35d Update usb.ids from www.linux-usb.org 2015-10-01 05:20:27 +02:00
Automatic Committer
6d3006b031 Update pci.ids from pciids.sourceforge.net 2015-10-01 05:20:25 +02:00
Dario Casalinuovo
5e726ed442 BMediaEventLooper: Finally fix some lateness problems
* For the moment i still remain with the classic lateness calculus.
My code wasn't perfect, but this commit fix the remaining
problems from my perspective.
* The first reason is that if we have a patologic latency
such as adding for experimental reasons a snooze() before a SendBuffer or
in the BufferReceived callback, we still can't do anything about it.
If we use enqueue_time and don't send a LateProducer notice, this latency
will never be detected by the API client. We can't do anything about it,
and it's even better that systems with such problems are recognized as
soon as possible IMO.
* The second reason is that the lateness calculus described in the BeBook
is done this way because the media_kit want us to adjust our timing in both
early and late situations.
* Realtime expect that things are always delivered under a certain time
limit, if the software at the bottom doesn't meet with this requirement,
it's just not realtime and things can't work in realtime.
* enqueue_time has nothing to do with the performance_time. But we can
still add this to the media_timed_event struct so that applications can
make use of it.
* Lateness was probably not used a lot in BeOS programs as it looks like
a relatively new feature but i have the concern to complete our API
implementation to be close to what i see was reasonably the designers aim.
2015-09-26 13:23:49 +02:00
Dario Casalinuovo
8bffda1633 media_kit: Allow to set a NULL buffer group. Fixes #12305. 2015-09-26 13:23:48 +02:00
Stephan Aßmus
3da9a05272 TextDocumentTest: Embed text view into scroll view
Work in progress... text view does not yet control the scroll bars
properly when the contents change.
2015-09-26 01:48:41 +02:00
Stephan Aßmus
da16a92894 Model: Pull changelogs from the package infos 2015-09-26 01:48:36 +02:00
Stephan Aßmus
17dd011a5f WebAppInterface: Request to receive changelogs 2015-09-26 01:48:31 +02:00
Stephan Aßmus
16f524c59b PackageInfoView: Update on changelog changes
Also re-order the bitfield test such that each sub-view is only
updated once per package changed message.
2015-09-26 01:48:27 +02:00
Automatic Committer
8533039abf Update usb.ids from www.linux-usb.org 2015-09-24 05:20:23 +02:00
Automatic Committer
4534f55930 Update pci.ids from pciids.sourceforge.net 2015-09-24 05:20:21 +02:00
Stephan Aßmus
5f80d48a76 TextDocument: Extended comment in _Insert(). 2015-09-20 22:18:10 +02:00
Stephan Aßmus
f890fab65b TextDocument: Change _Insert() to use TextDocument
In preparation for implementing Undo/Redo support, we need _Insert() to
take a TextDocument instead of a BString, CharacterStyle and ParagraphStyle.
When a chunk of the TextDocument has been removed, we need to be able to
Insert() that as part of the Undo operation. Not well tested, but typing
still works.
2015-09-20 22:17:26 +02:00
Stephan Aßmus
2e2ff27a92 Paragraph: Added EndsWith(BString) 2015-09-20 22:17:21 +02:00
Stephan Aßmus
9a8dd79cc2 TextDocumentLayout: Use Invalidate() instead of InvalidateParagraphs()
Added TODO about which data the TextChangedEvent should have in order to
know how to respond in the TextDocumentLayout. For now, update all paragraphs
in the layout, add new ones as necessary, and remove the ones we have in
excess by using Invalidate().
2015-09-20 22:17:17 +02:00
Stephan Aßmus
1fa37d5af8 HaikuDepot: Text: Fix regression for B_SELECT_ALL
An Invalidate() was removed, since I originally planned to remove the need
to invalidate on selection changes, but then saved it for later.
2015-09-20 22:17:12 +02:00
Jessica Hamilton
2d34b65ec2 Tracker: fix insets of vertical scrollbar. 2015-09-20 00:14:31 +00:00
Stefano Ceccherini
e5f9dfebd7 FlattenPictureTest: Add FillTriangle() with gradients test 2015-09-18 23:20:09 +02:00
Stefano Ceccherini
00c573d643 FlattenPictureTest: Add tests for FillRoundRect with gradients 2015-09-18 23:20:09 +02:00
Stefano Ceccherini
b8c65995cd FlattenPictureTest: Add tests for FillRegion with gradients 2015-09-18 23:20:08 +02:00
Stefano Ceccherini
7cf26360d9 FlattenPictureTest: Add failing test
InvertRect, when mixed with SetDrawingMode calls, fails to draw correctly
to a BPicture.
2015-09-18 23:20:08 +02:00
François Revol
594187ade2 glibc/ppc: add missing math stuff
hopefully fixing the build for the 53rd time...
2015-09-18 03:59:56 +02:00
François Revol
bbdf4c27fa glibc: avoid linking long double math stuff on PPC and M68K 2015-09-18 03:59:56 +02:00
François Revol
dab2aa8189 complex.h: fix __NO_LONG_DOUBLE_MATH test
PPC doesn't support long double yet...
2015-09-18 03:59:55 +02:00
Stefano Ceccherini
abf565b12b FlattenPictureTest: add tests for Gradients.
None of the tests pass. BPicture currently doesn't have support for gradients.
Also add DrawString with offsets test.
2015-09-17 22:54:05 +02:00
Automatic Committer
ccff90f597 Update pci.ids from pciids.sourceforge.net 2015-09-17 05:21:31 +02:00
François Revol
045af160e7 df: silently accept -h
Traditional Unix 'df' use -h for human readable units.
I always end up typing 'df -h' so it's frustrating to see the usage there.
2015-09-17 00:29:50 +02:00
François Revol
490dc7aa16 keymap: avoid showing usage twice 2015-09-17 00:22:13 +02:00
Axel Dörfler
90ec3fc165 AHCI: disable interrupt reset for unsolicited COMINIT for now. 2015-09-15 10:23:24 +02:00
Jessica Hamilton
8927348ef1 Boot menu: change colours of sub-menu headers. Fixes #12371.
Changed from white on red background, to yellow on black
(neutral) background. Red on black made it look like a
warning, whereas yellow feels more informative.
2015-09-15 01:32:07 +00:00
Jessica Hamilton
31b0eb9f53 BWindow::MoveOnScreen(), fix parentheses warning. 2015-09-15 00:51:07 +00:00
Jessica Hamilton
93244a65e6 BScrollView: _ComputeFrame(BRect,...) used incorrect insets.
Previously, the BRect would be expanded by the call to
InsetBy(), but the replacement _InsetBorders() forgot to
take this into account.

Fixes #12380.
2015-09-15 00:39:23 +00:00
Fredrik Holmqvist
c8bd1b0ad0 Set ACPI io and physical address to 32 bit on 32 bit arch.
This is temporary fix, our ACPI.h header needs a review, and perhaps
a better approach.
2015-09-14 22:18:02 +02:00
Axel Dörfler
268e4ea27d ScreenSaver: Make preview relative to font size.
* This commit got somehow eaten by git rebase :-/
2015-09-14 20:54:26 +02:00
Axel Dörfler
64ee9242db Time: properly center the window.
* The previous code was broken, and did not take the actual window
  size into account; it's now using BWindow::MoveOnScreen().
* Also, make the width of the time zone list relative to the font size.
2015-09-14 20:46:02 +02:00
Axel Dörfler
8d46a99fe9 Sounds: Center initial window.
* Now uses BWindow::MoveOnScreen().
2015-09-14 20:46:00 +02:00
Axel Dörfler
8bf216d6dd Screen: improved window position, fixed empty line.
* The monitor size now scales with the font size.
* It now uses BWindow::MoveOnScreen() to find a good position on screen.
* The monitor info is now properly hidden when there is no info (this
  removes a blank line at the top of the left box).
2015-09-14 20:45:58 +02:00
Axel Dörfler
4d9fc65ec7 Mouse: let the mouse scale with the font size.
* It's really confusing that SetOrigin() ignores the current
  scaling.
2015-09-14 20:45:55 +02:00
Axel Dörfler
881325a06e Keymap: improve initial window size, and position.
* By making it scale with the font size, and by using
  BWindow::MoveOnScreen().
2015-09-14 20:45:53 +02:00
Axel Dörfler
3f772f525b Backgrounds: let the preview scale with the font size. 2015-09-14 20:45:51 +02:00
Axel Dörfler
b11399ff60 BAlert: fixed missing initialization of fAlertSem.
* Fixes bug #12372.
2015-09-14 20:45:49 +02:00
Axel Dörfler
4df20b63c0 Sudoku: improve initial window size, and position.
* By making it scale with the font size, and by using
  BWindow::MoveOnScreen().
2015-09-14 20:45:47 +02:00
Axel Dörfler
adcbc17bf5 DeskCalc: improve initial window size.
* By making it scale with the font size.
2015-09-14 20:45:45 +02:00
Axel Dörfler
0342049e48 CharacterMap: improved initial window size, and position.
* By making it scale with the font size, and by using
  BWindow::CenterOnScreen().
* Minor cleanup.
2015-09-14 20:45:43 +02:00
Axel Dörfler
2603848d7d ActivityMonitor: improve initial window size, and position.
* By making it scale with the font size, and by using
  BWindow::CenterOnScreen().
2015-09-14 20:45:40 +02:00
Axel Dörfler
8e96ec340b BWindow::MoveOnScreen() now has a flags field.
* You can now specify whether or not you want to resize the window,
  and move it on screen, or center it.
* Removed PulseWindow::MoveOnScreen() method.
2015-09-14 20:45:38 +02:00
Fredrik Holmqvist
65ecbac0dc Switch from ACPI_SIZE to ACPI_PHYSICAL_ADDRESS.
Should fix build bustage on 32 bit builds.
2015-09-13 22:16:19 +02:00
Fredrik Holmqvist
e226d1d04f Update ACPICA to 20150818.
Previous update was 20140724.
    Changes at:
    https://acpica.org/sites/acpica/files/changes_25.txt
2015-09-13 21:12:49 +02:00
Axel Dörfler
41082c87ac AHCI: only perform the reset when ST is not set.
* As the specs say, this causes undefined behavior.
* Should help with the recently introduced boot issues, but cannot
  be considered a full fix -- as mmlr pointed out, one has to detect
  unsolicited COMINITs.
2015-09-11 17:34:27 +02:00
Axel Dörfler
eb62d3337b VFS: Slight rework of the FD disconnect feature.
* This should fix ticket #4157, although I probably have missed
  something.
* In any case, it no longer messes with the ref counts of the
  file descriptor, and the race condition in put_fd() should be
  gone.
* It's still rather messy all in all.
2015-09-11 17:25:01 +02:00
Axel Dörfler
6adf7a0c75 VFS: prevent FD inheritance for the kernel completely.
* Each io_context now has a "inherit_fds" member that decides whether
  or not this context allows to inherit FDs to its children.
* This replaces the former O_CLOEXEC mechanism.
2015-09-11 17:08:35 +02:00
Axel Dörfler
16844b92fc launch_daemon: Open stdin/out/err FDs.
* As with the boot script, point them to /dev/null.
* This should fix #12298.
2015-09-11 09:01:26 +02:00
Axel Dörfler
e668e80db0 VFS: Always open kernel FDs with O_CLOEXEC.
* Avoids leaking them into userland.
2015-09-11 08:57:15 +02:00
Stephan Aßmus
8d611f17a7 TextDocumentView: Fixed leak of BMessageRunner. 2015-09-10 21:56:38 +02:00
Stephan Aßmus
81f55cc896 HaikuDepot, text framework: Rework blinking the caret
Make sure that the caret starts blinking half a second after it last moved.
The previous solution using Pulse() had a number of problems:
 * The caret could be hidden during moving it or during typing. It would then
   be shown again very soon after, i.e. when typing the next character or
   when moving it to the next offset. But it looks bad anyway.
 * When the caret stopped moving, it started blinking a random amount of
   time afterwards, getting back into the rhythm of Pulse() messages.
   However, starting to blink a constant time after the caret last moved,
   looks much more satisfying.
2015-09-10 21:56:33 +02:00
Automatic Committer
877d731e03 Update usb.ids from www.linux-usb.org 2015-09-10 05:20:36 +02:00
Automatic Committer
6f7ee12593 Update pci.ids from pciids.sourceforge.net 2015-09-10 05:20:34 +02:00
Axel Dörfler
ac9ec47d27 BMenu: made left side padding font size relative.
* Also changed BMenuItem to make better use of that size.
2015-09-09 21:06:19 +02:00
Axel Dörfler
d8b517b50f Tracker: made title view height depend on font size.
* It now uses a font that's 3/4 the size of the plain font; ie. there
  shouldn't be any change with the default font size.
* Also cleaned up some weird layout code on the way.
2015-09-09 21:05:10 +02:00
Axel Dörfler
46dd7d5077 Tracker: Fixed vertical list icon position.
* Instead of drawing it at the bottom of the line, draw it in the
  middle of it.
2015-09-09 21:03:58 +02:00
Axel Dörfler
bf5480299e Tracker: Made list element spacing relative to font size.
* Instead of always adding two pixels, we now multiply the size with 1.1.
2015-09-09 21:02:15 +02:00
Axel Dörfler
f0b3691d10 Tracker: Removed extra border next to the draggable icon.
* Also removed extraneous call to BMenuBar::SetBorder(); B_BORDER_FRAME
  is the default, anyway.
2015-09-09 21:00:13 +02:00
Axel Dörfler
14cc5b4c44 BMenuBar::SetBorders() added.
* This allows you to only draw some of the borders.
2015-09-09 20:58:57 +02:00
Axel Dörfler
f74aab0a2e Appearance: Added font sizes 19, and 20 to the set.
* We might want to find a better solution for this, and also use it
  for the Terminal then.
2015-09-09 20:56:11 +02:00
Axel Dörfler
fd79684a5f BScrollView::SetBorders() added to disable borders.
* You can specify which borders will be drawn using the
  BControlLook::B_TOP_BORDER, ... constants.
* Adapted Mail to no longer need the SetInsets() hack.
2015-09-09 20:51:49 +02:00
Axel Dörfler
fb956f2561 Deskbar: scale better with the font size.
* This makes it much more usable with a larger font size.
2015-09-08 18:01:10 +02:00
Axel Dörfler
6612ea4f29 HaikuDepot: use better min/max widths for columns.
* Use a scale factor depending on the font size.
* Be more generous when it comes to the max width.
* Use StringWidth() for the default size of the size and status columns.
2015-09-08 17:59:17 +02:00
Axel Dörfler
f7c2983edc HaikuDepot: change window frame setting.
* Moved entirely into MainWindow.
* Moved duplicated code into separate methods.
* Resize the main window on larger screens by default, as we can make
  use of the extra space.
* Use BWindow::MoveOnScreen() instead of make_sure_frame_is_on_screen()
  as the former has more info. And is even smarter now as it can
  optionally resize windows to fit on screen.
* Center window on screen by default (ie. when there are no settings).
2015-09-08 17:58:02 +02:00
Axel Dörfler
bafcf01610 DiskProbe: improved layout scaling.
* Don't use a fixed size font for the header controls, but one that
  depends on the default plain font size.
* Minor cleanup.
2015-09-08 17:56:22 +02:00
Stephan Aßmus
7d8d7785c1 Text framework: Added TextEditor::Replace()
Call Replace() on TextDocument, so that there are not two edits later
on once UndoableEdit stuff is supported.
2015-09-06 23:09:36 +02:00
Stephan Aßmus
41bd20b06b Text framework: Add TextListener in TextDocumentLayout...
... and invalidate based on TextChangedEvents. I am not yet sure whether
TextChangeEvent needs separate counts for removed and changed paragraphs.
It is most likely not yet correct and may either update too many paragraph
layouts or miss updating some at the end.
2015-09-06 23:07:09 +02:00
Stephan Aßmus
4a96bcdafa Text frame work: Implement sending TextChangedEvents
TextDocument:
 * Moved implementation of Remove() and Insert() into private methods.
 * Reimplement all public Insert() methods and Remove() on top of Replace().
 * In Replace(), send a TextChangedEvent. Added TODO for sending a
   TextChangingEvent, although at this point, I am not sure if it will be
   needed at all.
2015-09-06 23:03:34 +02:00
Stephan Aßmus
f6e5131227 TextDocumentTest: Make document editable. 2015-09-06 23:02:51 +02:00
Stephan Aßmus
87136732d0 HaikuDepot: Fixed wording in a comment. 2015-09-06 21:51:24 +02:00
Stefano Ceccherini
ce27f9612e Implement ClipToPicture inside a BPicture. Not working yet.
BView::ClipToPicture doesn't work anymore, when nested inside a BPicture,
This happened when its implementation was moved server-side.
2015-09-05 21:35:54 +02:00
Michael Lotz
83dc74af93 BPicture: Fix archive constructor on 64 bit.
The int32 was cast to a ssize_t which has a different size on 64 bit,
therefore clobbering the stack.

Also remove the use of basic type references in arguments, which
probably was the reason for doing the above in the first place.
2015-09-05 18:13:34 +02:00
Michael Lotz
d64c7086d5 Various whitespace cleanup only. 2015-09-05 16:09:33 +02:00
Michael Lotz
8b9ec55606 BPicture: Fix archive constructor.
The cleanup commit df48d3f9a8 broke
constructing a BPicture from an archive due to an incomplete rename.
The passed in BMessage was used as the data buffer instead of the
extracted data field.

Fixes the application side crash of #12340. Seeing how long this was
broken without anyone noticing, the feature doesn't seem to be very
popular.
2015-09-05 16:09:32 +02:00
Michael Lotz
4176076be1 app_server: Port ServerPicture to the new PicturePlayer API.
This allows for bounds checks on strings and bitmap data to avoid
crashing due to corrupted user data. It also avoids copying the data
where possible.
2015-09-05 16:09:32 +02:00
Michael Lotz
eec73693e0 PicturePlayer: Rework to be more safe against corrupted data.
This introduces a more sane API (currently private) that allows for
safer and possibly more efficient implementations:

* It uses a struct of named and typed function pointers instead of just
  a void pointer array. This adds type safety to the callbacks so the
  compiler can figure out if things match up before subtle bugs get
  introduced.
* It provides bounds for all strings/buffers passed to the callbacks.
* It uses const references instead of implicitly copying arguments.
* It folds stroke_x/fill_x pairs into draw_x functions with a fill
  argument to reduce the amount of functions needed.
* It uses unsigned values where negative values make no sense.

The old API has been implemented on top of the new one using adapter
functions. It makes copies of all data passed to the callbacks which
effectively keeps the picture data from being modified. This matches
with the R5 behaviour.

This also reimplements the buffer parsing to be safe against corrupted
data by validating that the types actually fit in the provided sizes
and buffers (using a templated reader).

Since this class is used from the app_server with user provided data,
making it more safe is important even though it comes with a slight
overhead (replicating R5 behaviour, i.e. crashing the app_server when
corrupted data is fed, doesn't seem very appropriate here).
2015-09-05 16:09:31 +02:00
Adrien Destugues
5a87d490f5 Fix implementation of _res.
While not thread-safe, it should still be possible to use it in
non-threaded programs, or with locking on the application side.

The "thread-safe" implementation we got from NetBSD called abort(),
which is not a good solution. Restore the non-thread-safe
implementation, which should still work.

Fixes issues in openssh and mtr, and possibly other ported apps.
2015-09-05 12:17:46 +02:00
Alexander von Gluck IV
8248d96a06 AHCI: Begin simulating SCSI Inquiry with VPD data
* Needed for SCSI level access to trim maximum block sizes.
2015-09-04 19:30:34 -05:00
Rene Gollent
a1e25f862c Mail: Fix gcc4 build.
- Fix typo in forward declaration.
- Add missing include for snprintf.
- Add missing virtual destructor on QueryListener abstract class.
2015-09-04 16:57:06 -04:00
Axel Dörfler
9ed8f48498 Mail: show icons only setting works again.
* It will show the label as tool tip when the labels are hidden.
2015-09-04 17:33:51 +02:00
Axel Dörfler
6b8712663a BToolBar: made FindButton() public. 2015-09-04 17:33:46 +02:00