Commit Graph

59604 Commits

Author SHA1 Message Date
Murai Takashi
1d0064be8b file_systems/netfs/server: Fix attempting to delete released memory
Remove 'delete securityContext;' at line 967, since 'securityContext'
will be deleted by ObjectDeleter.

Pointed by clang static analyzer.

Change-Id: Iffcd6e2b293d5614fa15ee108562ff1f5f23ddc9
Reviewed-on: https://review.haiku-os.org/c/1011
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2019-02-06 07:27:12 +00:00
Jérôme Duval
af61539918 posix_spawn: add POSIX_SPAWN_SETSID.
see http://austingroupbugs.net/view.php?id=1044

Change-Id: I9ae4fe07ea0fa7e20eb9a1d8c64e971e7353bcff
Reviewed-on: https://review.haiku-os.org/c/1008
Reviewed-by: Rene Gollent <rene@gollent.com>
2019-02-04 19:21:30 +00:00
Adrien Destugues
f0a99f2bea WebPositive: check if SSE2 is available.
We cannot run if it's not, but at least let's have an understandable
error message.

Fixes #14583

Change-Id: Ibe2e5d7721a1c48f06c2ac37d007a59d80c14bab
Reviewed-on: https://review.haiku-os.org/c/1007
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2019-02-04 16:44:50 +00:00
ahenriksson
c71d928ee0 bfs: Print diagnostic message when disk size is too small
Change-Id: Ie7bff78b1b0c783bc74f1fe774ec31f8437257df
Reviewed-on: https://review.haiku-os.org/c/922
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
2019-02-04 16:37:35 +00:00
ahenriksson
0ec6ced115 bfs: Flush transactions with no blocks in _FlushLog()
Since the file system resizing code must reinitialize the block cache,
it is necessary that it is completely empty.

Change-Id: If0df9f8c003edb4ccc65c4b42940512400f8598c
Reviewed-on: https://review.haiku-os.org/c/921
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2019-02-04 16:37:35 +00:00
ahenriksson
b9256c155b disk_device_manager: implement KFileSystem::Resize()
Change-Id: I122a3881b0d0a8febc23c9751d5e32018c26da5e
Reviewed-on: https://review.haiku-os.org/c/920
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2019-02-04 16:37:35 +00:00
Rob Gill
13ce87c6f2 apps/processcontroller Fix deskbar icon scaling issue Bug #14696
* Clear entire width of interspace between CPU and Memory bars

   Fixes issue of artefacts appearing to the left of the memory
   bar when adjusting deskbar width, especially on multi-core
   systems at large font sizes.

   (original code appears to have assumed interspace would not
   exceed two pixels in width)

Change-Id: I4183d0337e47573792f35280452455fda584ccaf
Reviewed-on: https://review.haiku-os.org/c/1003
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2019-02-03 18:06:11 +00:00
Murai Takashi
f465c7fa61 kits/midi2: Fix PVS 820
Fix memory leak when realloc() fails.

Change-Id: Ic787ca714e4a106cc22e6186078a8e72d0a0553d
Reviewed-on: https://review.haiku-os.org/c/1006
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2019-02-03 18:05:55 +00:00
Murai Takashi
21392fa9b1 mail: Fix PVS 965
Fix memory leak when realloc() fails.

Change-Id: I8f7fb3ce7f43de03f76e8f0ee14277d79a55ee63
Reviewed-on: https://review.haiku-os.org/c/1005
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2019-02-03 18:05:55 +00:00
Murai Takashi
6c67c7d635 support/String: Fix PVS 626
Fix memory leak when realloc() fails.

Change-Id: I5b44df57bdd251e5164938ed70412c909ce09df1
Reviewed-on: https://review.haiku-os.org/c/1004
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2019-02-03 18:05:55 +00:00
Augustin Cavalier
e5d0c9094d BView: Add a B_SCROLL_VIEW_AWARE flag.
* This indicates the view will manage whatever scrollbars are targeted
   to it.
 * Use _B_RESERVED7_ for this. It's been RESERVED since BeOS R5
   (I guess it was probably something on some older BeOS version?)
   and we don't really care about BeOS R4 ABI compatibility, so
   that should be fine.
 * Update BScrollView to not touch BScrollBar range/proportion
   when the target view has this set.
 * Update BListView to set this flag, always.

Fixes #14871.

Change-Id: I17027f3b63ef28da1e735c5393593496c415dce3
Reviewed-on: https://review.haiku-os.org/c/998
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2019-02-03 18:04:13 +00:00
Rob Gill
b073a8c83f apps/autoraise Restore functionality
* Restore functionality / compilation
		(C++11)Spacing issues with string macros fixed.
		Fix type declarartion for removeFromDeskbar so compiles
		on x86_64.

	* Code format cleanup

	* Remove DANO related code

Change-Id: I738d14914e320b7606210d8263065187b2c06b1a
Reviewed-on: https://review.haiku-os.org/c/898
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2019-02-03 18:03:50 +00:00
Augustin Cavalier
3493fcb668 headers/kernel: Add argument names to initialization functions. 2019-02-02 18:10:54 -05:00
Augustin Cavalier
fa03522846 libroot: Revert changes to hide BeOS-only functions.
I wasn't thinking correctly when I made the previous change --
init_term_dyn is compiled into all applications, and so these
functions need to remain in order to not break them.
2019-02-02 18:09:28 -05:00
Augustin Cavalier
89b5768731 network/hostname: Mark as a "service"-type.
It is technically the "reverse" of DNS settings, which are also
classified as a "service", so they should go together.
2019-02-02 17:29:52 -05:00
Augustin Cavalier
15a4183640 libroot: Move some BeOS-only API calls behind _BEOS_R5_COMPATIBLE_.
This is defined by our build system on GCC2 only, so they will now
be excluded under all other architectures.
2019-02-02 14:36:26 -05:00
Augustin Cavalier
06d77ca653 libnetwork: Remove not-so-useful printf.
We don't really need to see in syslog when an application is
running in R5 compatibility mode.
2019-02-02 14:20:16 -05:00
Augustin Cavalier
8270254464 libnetwork: Rename find_own_image() to set_own_image_location().
Thanks Axel for the review!
2019-02-02 14:01:30 -05:00
Augustin Cavalier
d65ffc926c libnetapi: Remove __gNetAPIStart.
Not used by anything.
2019-02-02 13:26:18 -05:00
Augustin Cavalier
67ef9f72fc network: Utilize image_id argument to initialize_before.
We don't need to search for our own image_id, we already have it now,
so just use it.
2019-02-01 20:33:41 -05:00
Augustin Cavalier
c5e4e4ffb4 headers/kernel: Include declarations of initialization functions in image.h.
No "real" functional change, but this causes GCC7 to throw errors when
these functions are declared without the image_id argument, which
in some files they were (as this commit repairs.)

This change is largely inconsequential on x86, but on callee-cleanup-args
targets, leaving out the argument would probably cause stack corruption.
2019-02-01 20:30:39 -05:00
Augustin Cavalier
d545ad17ce headers/kernel: Define B_CURRENT_IMAGE_SYMBOL via __func__.
Previously, __haiku_init_before was a symbol that was included in
each (shared) object, and so it could be used to determine what
one we were in. Now, there are no such universal symbols that
are declared private to only the object, so we have to use
a different approach.

__func__ is defined as a const char* at the very beginning of
every function it's used in, set to a string of the function name
only, i.e., the arguments and return type are left off. So while
including that is perhaps not quite optimal, in practice this
definition is used extremely rarely (it was introduced by Haiku,
and it is used in only 2 applications at all that I could find --
WebKit and Canna.)

There really isn't any other way to get a pointer that we know
for certain is within the current object besides this one
without inserting one, but that really isn't merited just for this.
(__builtin_return_address() has problematic semantics wrt. inlining,
including linker-inlining.) So this will have to do.
2019-02-01 20:24:31 -05:00
Augustin Cavalier
475172337b headers/kernel: Move B_WAIT_TILL_LOADED to a syscall header.
It is only used as an argument to _kern_load_image directly, not to
any of the load_image functions in image.h, so it belongs in a syscall-
specific header like other such constants.

No functional change intended.
2019-02-01 19:45:56 -05:00
Augustin Cavalier
04b9fbfdfa headers/kernel: Clean up image.h.
* Add missing whitespace.
 * Remove definition of the now-gone __haiku_init_before.

No functional change intended.
2019-02-01 19:20:25 -05:00
Augustin Cavalier
a396188f23 BSound: Add explicit cast to bigtime_t.
Fixes the GCC2 build.
2019-02-01 11:30:08 -05:00
CodeforEvolution
aad79bda85 Implement Duration() in BSound
Change-Id: I45244cd958acd7856a065af01625d2164b9ad033
Reviewed-on: https://review.haiku-os.org/c/963
Reviewed-by: Stephan Aßmus <superstippi@gmx.de>
2019-02-01 15:49:07 +00:00
Rob Gill
5186fb7ebd Network: Avoid DHCP over-writing user specified DNS settings
* Adds parser to servers/net/nethost, to check current
   settings in resolv.conf before updating

   If user has specified DNS settings manually, DHCP derived
   settings are appended to resolv.conf, rather than overwriting.

   (If no user specified data is present, or in the event of
   a badly damaged resolv.conf, DHCP over-writes file in same
   manner as prior to this change)

Fixes #11565.

Change-Id: I43464909009d2416d57f66f7bd14d13c81f803e7
Reviewed-on: https://review.haiku-os.org/c/997
Reviewed-by: Axel Dörfler <axeld@pinc-software.de>
Reviewed-by: Stephan Aßmus <superstippi@gmx.de>
2019-02-01 08:59:48 +00:00
Augustin Cavalier
f7e2391702 XHCI: Use InitKernelAccess/PrepareKernelAccess properly.
* Actually check return codes of InitKernelAccess().
 * WriteDescriptorChain accesses the memory in the IO vectors, so
   we need to PrepareKernelAccess before calling it.

Fixes #14752.
2019-01-31 22:48:04 -05:00
Augustin Cavalier
32d4274178 kernel/team: Use a rw_spinlock to guard the sTeamsHash.
Virtually identical to my prior change to sThreadsHash.
2019-01-31 20:09:10 -05:00
Augustin Cavalier
5796ecc706 kernel/thread: Add proper permissions checks.
* Add a utility thread_check_permissions(), which takes the target
   thread, the calling thread, and whether or not this is a "kernel" call,
   and then returns whether the target thread may be legally modified.
 * Refactor all calls that operate by sending a signal to the thread
   into a single thread_send_signal() utility function, which now uses
   thread_check_permissions() appropriately.
 * Manually add the permissions checks to other functions as needed.

Solves a bunch of decade+-old TODOs.
2019-01-31 20:05:39 -05:00
Augustin Cavalier
d745129c7a kernel: Mark TeamThreadTable::GetIterator() const.
We use it only while holding a "read" lock, so it must be.
2019-01-31 20:03:28 -05:00
Augustin Cavalier
8140719777 WebPositive: Use spinners for font size options.
Fixes #14845.
2019-01-29 13:31:09 -05:00
Humdinger
e705c841d7 Fix URLs in the development docs
* Fix dead links where possible
* Use online instead of local links to the BeBook

Change-Id: I250117dcccc0026925c56545cca7e3b4467f2c78
Reviewed-on: https://review.haiku-os.org/c/811
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2019-01-29 16:12:55 +00:00
Rob Gill
80cdc887fa apps/pulse Fix PVS-2010
*	Replace unformatted printf with puts

	*	removed extraneous spaces

Change-Id: I5c707a22dca703bf6a594ab6e85dc2c24bc3911a
Reviewed-on: https://review.haiku-os.org/c/966
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2019-01-29 16:11:52 +00:00
Rob Gill
d27546c10f kits/interface Fix PVS902
*	replace unformatted printf with puts

Change-Id: I06b5f436bf51423c60ddd3cc81d86217d06c78cd
Reviewed-on: https://review.haiku-os.org/c/961
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
2019-01-29 12:20:56 +00:00
Rob Gill
d7e7e13c67 apps/networkstatus Fix PVS966
*	replace unformatted printf with puts

	*	also add translation for one error message

Change-Id: I48f65af633a39c5f7d4ab359ec8b648c9b869fd4
Reviewed-on: https://review.haiku-os.org/c/962
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
2019-01-29 12:20:00 +00:00
Rob Gill
b726920e3f apps/codycam Fix PVS1347,1348
*	Replace unformatted printf with puts

Change-Id: If4e41bbc58e8a03fdcbee3f2d2efc0a9ff9fc2a2
Reviewed-on: https://review.haiku-os.org/c/965
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
2019-01-29 12:18:43 +00:00
Rob Gill
2f8e8732e1 mime_db Add additional disk image types
*	Two disk image types added to the mime_db with sniffer rules

		1	x-intel-image as a generic type for images using an intel
		partition style boot sector
		2	x-ntfs-image a specific type for ntfs format image files

		Default handler for these types is set to mountvolume, which
		handles ntfs and fat images detected by these sniffers,
		in the same manner as bfs images detected by x-bfs-image.

Change-Id: I994fa23bcc988c40a098aa106587e75d9e1f9b4b
Reviewed-on: https://review.haiku-os.org/c/964
Reviewed-by: Stephan Aßmus <superstippi@gmx.de>
2019-01-29 07:28:35 +00:00
Rob Gill
434c347111 headers/libs/agg Fix PVS 33
* Fix successive assignment of 'da'

	* also trailing whitespace removal

Change-Id: Ic127150c18c042839d4104ccc5830adf19550399
Reviewed-on: https://review.haiku-os.org/c/954
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2019-01-29 04:04:01 +00:00
Rob Gill
d1f885b435 headers/libs/agg Fix PVS 11, PVS12
* Replace hard-coded math constants with M_SQRT1_2
	(math.h was already included)

	* also trailing whitespace removal

Change-Id: I5e9511060d2f812830f7621bee3aff9a517576e5
Reviewed-on: https://review.haiku-os.org/c/956
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2019-01-29 04:02:25 +00:00
Alexander von Gluck IV
cf77ef1857 haiku_loader: Toss iSCSITarget, add TCP stack to loader.
* This iSCSI implementation only worked on PPC big-endian atm.
* We're pretty sure iSCSI support in haiku_loader doesn't make
  much sense anymore. iPXE on (on arm,x86,etc EFI/BIOS platforms)
  supports iSCSI boot of disks.
* Haiku could use a iSCSI driver add-on, but it would exist much
  higher up and likely use standard drivers vs bare-minimum iSCSI
  target impementations.
* Leaving TCP and adding to all arches since it could make sense
  for haiku's native network disk subsystem or network debugging?

Change-Id: Ic181b93a1d8ffd77f69e00e372b44b79abbddb42
Reviewed-on: https://review.haiku-os.org/c/899
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2019-01-28 16:47:08 +00:00
ahenriksson
c3c2596d9b fs_shell: Add sscanf and vsscanf
Change-Id: I0f69ebb6bc12bb68488a0d0bdaa7b86f5b06bb99
Reviewed-on: https://review.haiku-os.org/c/938
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
2019-01-28 16:38:27 +00:00
Augustin Cavalier
849f58107a build_cross_tools_gcc4: Enable initfini-array in binutils.
Our implementation of it now behaves properly after the last commit.

Change-Id: I6bebc91ae0f9512ea07ad6a7a4ccea9ee758e01b
Reviewed-on: https://review.haiku-os.org/c/908
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2019-01-28 16:37:28 +00:00
Augustin Cavalier
354b60af29 runtime_loader: Rework static initialization handling.
Previously, static initializers were just in ".ctors", which was handled
by GCC's crtbeginS, and that was injected in-between crti and crtn. Now,
however, binutils puts static initializers into init_array/fini_array by
default, which runtime_loader handles, but of course as initialize_after and
terminate_after are supposed to be called *after* all static initializers
are called; and since runtime_loader called init_array after _init, they
were not.

Now, we get rid of the __haiku_init_before/etc. functions, and move their
functionality inside runtime_loader. This is a "soft" ABI breakage,
which is mitigated by adding another ABI breakage (runtime_loader now
returns NULL for the initialize_before/etc. symbols, as otherwise
old applications would have their initialize_before/etc. called twice;
once by runtime_loader, and then once by __haiku_init_before/etc.)

I don't see or know of any reason why an application would want to
get those symbols at runtime, though, so this shouldn't have any
adverse effects.

Change-Id: I42344c63f69c6f8ef260f6c3ca30202b6dfb153e
Reviewed-on: https://review.haiku-os.org/c/907
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2019-01-28 16:37:28 +00:00
Rob Gill
d49942867b apps/magnify Fix PVS897 through PVS901
* 	replace unformatted printf with puts

Change-Id: I34eedc08ae9e1e83cb43b4359c557ae6078becb9
Reviewed-on: https://review.haiku-os.org/c/960
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
2019-01-28 15:18:09 +00:00
Rob Gill
99fe9c42da apps/install Fix PVS381
* Use explicit type cast

Change-Id: I2d75eaeafcb6d46fbc79489394f0f6eb3af6f8d9
Reviewed-on: https://review.haiku-os.org/c/957
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2019-01-28 08:46:29 +00:00
Rob Gill
df9641c548 kits/Geolocation Fix PVS404
*	Prevent use of uninitialized 'lon' by checking for successful
		result prior call

Change-Id: Ifbd649a8c0c0c37f285cda11e307013929cefa12
Reviewed-on: https://review.haiku-os.org/c/958
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
2019-01-28 07:27:06 +00:00
Augustin Cavalier
187bbba6af mime_db: Fix another typo. 2019-01-27 14:36:56 -05:00
Augustin Cavalier
4854630d29 BScrollView: Resize scrollbars dynamically based on target's B_SUPPORTS_LAYOUT...
...instead of the BScrollView itself's layout flag. Thanks to Adrien and
Kacper for discussion on the mailing list.
2019-01-27 14:35:32 -05:00
Augustin Cavalier
b2d62af35a mime_db: Sniff rule must be on one line. 2019-01-27 13:42:27 -05:00