9946 Commits

Author SHA1 Message Date
John Scipione
7c369a4b3f Fix gcc2 build on Mac OS X Lion.
The gcc2 cross-compiler built on Mac OS X Lion has a bug in it
where it is erroring with 'cast specifies signature type' when
assigning 0 or NULL to a pointer to a member fuction. NULL in this
instance is correctly converted to 0 since it is illegal to assign
((void*)0) to a pointer to a member function. However, it should
be legal to assign 0 to a pointer to a member function. Thus, there
is a bug.  Since I can't fix the gcc2 compiler I am working around
this bug by assigning the pointer to a do nothing function instead.

My host compiler version is
i686-apple-darwin11-gcc-4.2.1 (GCC) 4.2.1 (Apple Inc. build 5666) (dot 3)

The same error occurs using the default gcc-llvm compiler and
a standard gcc 4.61 built from source. This bug does not occur on
Mac OS X 10.6 gcc2 or gcc4, nor does it occur on Mac OS X 10.7 with
the gcc4 cross-compiler.

If and when we decide to finally leave gcc2 behind we can revert this
change.
2012-04-07 06:21:26 -04:00
Alexander von Gluck IV
7d0f6bd08c Merge branch 'glife' 2012-04-06 20:11:27 -05:00
Alexander von Gluck IV
8bc51bee4c glife: Initial style cleanup 2012-04-06 20:04:26 -05:00
Alexander von Gluck IV
3c94b5cb05 glife: Rename *.hpp to *.h 2012-04-06 19:43:48 -05:00
Alexander von Gluck IV
9339eb2063 glife: Enable in Jamfiles / build system 2012-04-06 19:31:58 -05:00
Alexander von Gluck IV
51f9263bf2 glife: Pass const char* for name vs char*
* Upgrades to Mesa vs Be BGLView
2012-04-06 19:30:39 -05:00
Alexander von Gluck IV
0b4c5624c6 screen_savers: Initial import of GLife
* Donated to Haiku by author (Aaron Hill) under
  the MIT license.
* Resources conveted to rdef
* Headers cleaned up
* Jamfile created
2012-04-06 19:18:50 -05:00
Alexander von Gluck IV
ece8e7a857 radeon_hd: Fix pll DisplayPort endian bug. 2012-04-06 10:30:50 -05:00
Alexander von Gluck IV
9e4967aa9d dp common: Build Fix, use get_pixel_size_for.
* Thanks DeadYak for the tip
2012-04-06 15:11:33 -05:00
Alexander von Gluck IV
19574417cb radeon_hd: Better handle external encoders 2012-04-06 14:54:34 -05:00
Alexander von Gluck IV
0de9d6cdef radeon_hd: Move out some DisplayPort common code
* General DisplayPort functions in common dp.cpp
* DP port information struct in common header
* Please don't use this private accelerant common DP
  code just yet as it is very early.
2012-04-06 13:43:09 -05:00
Alexander von Gluck IV
33629ffdd3 radeon_hd: Add some missing PCIID's. FireStream / HD 7800 2012-04-06 10:49:43 -05:00
John Scipione
3cee15aac2 Keymap changes from recent activity. No AltGr yet.
Below is a mostly complete summary of the changes in this commit.

* Set the DeadKeys for the US-International Keymap to use the Option map.
* Rename American keymap to US
* Update the US, US-International, and United-Kingdom keymaps to take
  out unneeded spaces in the option layer. Also updated the dead keys
  and some other keys on the US-International keyboard to use UTF-8
  characters rather than there ASCII equivalents when different.
* Make the Option key fall-through when there is no mapping in the Option
  table. Option is for special characters, if none, print the regular one.
  This is mostly meant for the US keymap which has an empty option map. But
  also so that you don't have to repeat the normal, shift, and caps maps in
  the option map needlessly. Although the keymaps are still not empty in
  some cases that it could be like numpad keys and space.
* Update the /bin/keymap app to use fputs() instead of printf() when there
  is no actual formatting taking place. I've gotten into trouble for doing
  this before and it is faster to not process the string unnecessarily.
* Also several 80-char limit style fixes and updated comments.
* In Keymap class Reorder the modifier keys to match the keymap files.
  Put B_CONTROL_KEY check above B_OPTION_KEY. Neither change has any effect,
  they are purely aesthetic.
* Update DumpKeymap() method to use the abbreviated modifier letters so it
  will fit in your 80-char wide terminal.
* Tiny style fix in InputServer
* 80-char limit style fix in BWindow and add a comment that the shortcut
  gets eaten in the case of Cmd+Q
* Implement IndexForModifier() in KeyboardLayout, although I am not using it.
* Take Caps Lock out of the Modifier keys window because I couldn't get
  it to work the way I wanted it to.
* Move key roles to the left column, and the key label on the left. Add column
  header labels. Thanks Rimas!
* Add validation and improve marking menu options. Add a 'Disabled' option
  to control, option, and command menus to disable the key. Make the key
  role text grey if the key roles is disabled. Validation ensures that you
  cannot repeat the same key twice in the Modifier keys window since that
  won't work. You can't define 2 sets of option keys even if you really want
  to. You can disable your control, option, and command keys if you
  want, but that is not recommended.
* Rename kUpdateModifiers to kUpdateModifierKeys message to differetiate
  it from kUpdateModifier.
* Add shift key to Modifier keys window, use the stop icon instead of the
  warning icon to indicate conflicts.
* Allow the Layout system to control the size of the Modifier keys window
  again, set the width's of the key role lables to the widest, set the width
  of the menu fields to take up the rest of the space minus room for the
  conflict views. I didn't like it that the Modifier keys window would change
  size based on what options you had selected in the menu fields. Now it
  doesn't, but, the layout system still makes it all fit.
2012-04-06 02:42:54 -04:00
Oliver Tappe
60f75e901c Merge liblocale.so into libbe.so.
* Make the locale kit a part of libbe.
* Drop the LocaleBackend kludge used from within libbe (and from
  other places, too) in order to access system catalog strings. 
  This is now done via gSystemCatalog, which is provided and initialized
  by libbe.
* Drop all references to liblocale.so from all Jamfiles.
* Add legacy symlink liblocale.so in order to keep optional packages
  that rely on it in a working state.

TODO: the documentation hasn't been updated.
2012-04-04 22:44:42 +02:00
Ingo Weinhold
06114afc50 userlandfs: Remove superfluous driver_settings.c
It probably dates back to a time before our libroot exported the driver
settings API as well.
2012-04-04 21:53:00 +02:00
Alexander von Gluck IV
bf70fcd9cc radeon_hd: Add missing 4650 PCIID 2012-04-04 12:06:52 -05:00
Alexander von Gluck IV
8dfc5dbb26 radeon_hd: Complete move to common DisplayPort header
* Non-spec DP stuff in accelerant displayport.h
* Common DisplayPort header still has TODO's however
2012-04-04 10:41:34 -05:00
Alexander von Gluck IV
608826f578 swrast: Remove fNewWidth/fNewHeight 2012-04-03 12:15:38 -05:00
Alexander von Gluck IV
98c974a2c4 swrast: Add allocated renderbuffer option
* Double buffering no longer crashes, however
  it still doesn't function.
2012-04-03 12:00:42 -05:00
Alexander von Gluck IV
c6799d8ae1 dp_raw: Continued cleanup of DisplayPort common header
* Reduce number of common DP registers in radeon_hd
* Move to bitwise shifts as they will make more
  sense to more people in the long-run
2012-04-03 09:52:21 -05:00
Alexander von Gluck IV
64dcb00f9f radeon_hd: Begin to widdle down DP to common code 2012-04-02 17:00:24 -05:00
Jerome Duval
8ea0100184 es1370: build fix 2012-04-01 14:50:31 +02:00
Axel Dörfler
8f7ec006cb We need to remove the tree from the transaction. Fixes #3159.
* The tree does keep a reference to the inode as well as long as it is part
  of a transaction.
* Even if it wouldn't have done it (and would not have triggered the panic),
  Haiku would likely have crashed, as the inode (and therefore its tree) was
  already deleted at the time when the transaction discarded its listeners.
2012-04-01 13:04:36 +02:00
Axel Dörfler
15f4dcd831 The inode must be write locked. Dunno how that could work before. 2012-04-01 11:30:58 +02:00
Axel Dörfler
7fef0374fe Make sure it isn't part of a transaction upon destruction. 2012-04-01 11:30:58 +02:00
Axel Dörfler
8cf89e5cd3 Minor cleanup. 2012-04-01 11:30:57 +02:00
Adrien Destugues - PulkoMandy
d1abffcaa2 Force read/write mode for "removable media" devices as well. This makes
it possible to write files to my MP3 player.
2012-04-01 10:29:15 +02:00
François Revol
2c3d4bf64a Change accessor name for consistency. 2012-04-01 09:05:07 +02:00
Axel Dörfler
5868dfb989 Reverted r43922, and instead improved bfs_block_runs command.
* Calling FindBlockRun() would only work for the direct range anyway, as it
  would need to call into the block cache for anything else.
* bfs_block_runs now accepts a few more arguments that make finding an offset
  much easier.
2012-04-01 00:43:49 +02:00
Axel Dörfler
b5310b1638 Fixed another bug I introduced with r43837.
* Really the same thing, just for fragment nodes this time.
2012-04-01 00:43:48 +02:00
Axel Dörfler
dcfb930a98 Improved bfs_inode KDL command. 2012-03-31 23:13:05 +02:00
Axel Dörfler
e109dcf97b Don't bail out just because a node couldn't be read.
* Added a new CachedNode::SetTo() variant that actually returns an error code.
* Only bail out if there was an actual I/O error, not already if the offset
  was invalid.
* This should help fixing some corruption corner cases.
2012-03-31 21:57:55 +02:00
Axel Dörfler
bae8d9ab83 Reset the counter after each pass. 2012-03-31 21:57:14 +02:00
Axel Dörfler
cb8941c48f We must not check the node here.
* The node might not be a normal tree node, so we must not check it before
  writing.
* Also, it's always a good idea to check if the function you called didn't
  succeed.
* This fixes a crashing bug when running checkfs in some rare circumstances.
2012-03-31 17:00:02 +02:00
Axel Dörfler
e0927e2c44 Improved debug output. 2012-03-31 16:46:07 +02:00
Axel Dörfler
624b5ef3e6 Minor cleanup. 2012-03-31 15:49:02 +02:00
Axel Dörfler
657e62d222 Fixed the invalid duplicate left over nodes.
* Accidently introduced that bug in r43837; the arrayCount variable was not
  being updated after the value got removed.
2012-03-31 15:45:21 +02:00
Axel Dörfler
55e5a42d73 Fixed misuse of Transaction::Split().
* This would cause "transaction too large" messages, and repairing the index
  would actually be thrown away.
* We now properly finish/restart transactions instead which is actually
  working.
* Removed the misleading Split() method altogether, as it's not even used
  anywhere (not very surprising given that it doesn't do what its name
  suggests).
2012-03-31 15:14:46 +02:00
Axel Dörfler
0f94d73aaa Make PrepareIndices() fail if there isn't anything left to do. 2012-03-31 15:14:09 +02:00
Axel Dörfler
97b80db250 Fixed a possible KDL; the inode might be NULL.
* This happens in case the inode could not be opened in the first place.
2012-03-31 14:25:43 +02:00
Axel Dörfler
439495d8d4 Inode was leaking its small data lock.
* This should not have harmed normal operation (as an Inode is only destroyed
  when it is no longer being used), but the fs_shell could run out of
  semaphores easily.
2012-03-31 14:25:42 +02:00
Axel Dörfler
09ec0ad9c3 Also report errors when the free list is broken.
* This will cause the whole B+tree to be rewritten in that case, too.
* Added a TODO comment that describes an alternative solution for this.
2012-03-31 14:25:42 +02:00
Axel Dörfler
a300055ed7 Minor cleanup. 2012-03-31 10:36:36 +02:00
Axel Dörfler
ce17af69dc Implemented repairing index b+trees.
* There are now two passes in case a corrupted index tree has been found.
* The second pass will clear the affected indices at first, and will then walk
  over all inodes again to fill them.
* As a side effect, this will also defragment the indices; ie. the same
  mechanism could be used for this some day.
2012-03-31 10:36:35 +02:00
Axel Dörfler
225e1b1190 Minor cleanup. 2012-03-31 00:09:46 +02:00
Axel Dörfler
aed54a9a46 Use ID() instead of BlockNumber() for the debug output. 2012-03-31 00:09:46 +02:00
Axel Dörfler
b81ce43017 Made fLock a recursive lock instead of a mutex.
* This should fix bug #8069.
2012-03-31 00:09:45 +02:00
Axel Dörfler
17f695029a No need for 'else' after return. 2012-03-31 00:09:45 +02:00
Alexander von Gluck IV
948be77f87 swrast: Cleanup, no functional change 2012-03-30 16:50:28 -05:00
Alexander von Gluck IV
d0df888925 swrast: Fix inverted rendering
* Override swrast RenderBuffer mapping function
  so we can invert Y at rendertime.
2012-03-30 16:43:21 -05:00