Commit Graph
100 Commits
Author SHA1 Message Date
Axel Dörfler d6e44a2a3a Fixed BootLoaderTest build and debug build. 2012-06-18 21:52:30 +02:00
Axel Dörfler 90f510906d When the value hint mode is active, keep it active.
* Ie. when a different value is pressed, the hint is now being shown for
  the new value instead of turning of the value hints.
2012-06-18 21:52:29 +02:00
Axel Dörfler 7b2ba07326 The size control now actually sets the size instead of the offset.
* SizeSlider::MaxPartitionSize() also now returns the size instead of the end
  offset.
* Renamed CreateParamsPanel::_UpdateTextControl() to _UpdateSizeTextControl().
* Removed code duplication, and instead just call _UpdateSizeTextControl()
  twice.
* Minor other cleanup.
2012-06-17 20:04:39 +02:00
Axel Dörfler 2ffea8e8a3 Minor cleanup, no functional change. 2012-06-17 20:04:37 +02:00
Axel Dörfler 2996f64881 Implemented a value hint, changed colors.
* When you press on a value, that value will be shown with a
  highlighted background across the board until another value is set.
* Changed the colors to those from the Haiku logo rather than the BeOS
  logo. This makes it a bit more colorful which one might need to get
  used to -- comments welcome.
2012-06-06 00:35:51 +02:00
Axel Dörfler 0ba36860ad Added a few convenience methods. 2012-06-06 00:34:51 +02:00
Axel Dörfler bea2387b68 Made constants static, coding style cleanup. 2012-06-05 23:15:54 +02:00
Axel Dörfler 0084fa5209 Reverted the rounded buttons again.
* Following the previous discussion on the mailing list and Stippi's final mail.
* I tried to get used to it in the last couple of weeks, but I think it just
  looks out of place, and not good either.
2012-05-30 23:36:03 +02:00
Axel Dörfler 712fdb70b2 Style cleanup. 2012-05-30 23:36:02 +02:00
Axel Dörfler d6e44c9c82 If all fields for a specific value are set, mark it.
* In this case, the value is drawn a bit less intense than incomplete values.
* Make the keyboard focus background color depend on the actual background
  color.
* No longer allow to drag remove random hint values after removing a value
  from a field.
2012-05-30 23:36:02 +02:00
Axel Dörfler 3a1a1e1b82 Style cleanup. 2012-05-30 23:36:01 +02:00
Axel Dörfler 936b7fe433 Fixed a possible FD leak, CID 702009. 2012-05-25 01:40:31 +02:00
Axel Dörfler 52a5878b74 Added command line programm to rename/move attributes.
* Called mvattr, move is not yet implemented which is why it's not part of
  the image yet.
* Defaults to rename, moving attributes needs an extra option.
* Suggestions welcome :-)
2012-05-06 16:55:36 +02:00
Axel Dörfler a2e15b244f Changed the default background color to the system default. 2012-04-30 22:45:38 +02:00
Axel Dörfler 8e2140fa5e Fixed a large client side memory leak for app_server memory.
* The areas allocated for BBitmaps were never deleted, even though the
  app_server deleted its part when the memory got freed.
* This resulted in a constant memory increase if the application in question
  would operate on many changing large bitmaps, like photos.
* Since the bitmaps are reference counted, we don't actually know when to delete
  the areas, so that the app_server now notifies the client whenever that is
  possible.
* This might fix #6824.
2012-04-29 20:26:14 +02:00
Axel Dörfler 7705d517d1 Lock in ClientMemoryAllocator::Allocate(), and Free().
* Since bitmaps are reference counted, it might not be easy (and already not
  the case) that holding the ServerApp lock can be enforced.
* To be on the safe side, allocations and freeing memory now performs its own
  locking.
* Brought the documentation to the status quo.
2012-04-29 20:26:13 +02:00
Axel Dörfler 6068e43923 Optimized freeing client memory if it spans the whole area.
* If a block of client memory spans the whole chunk, there is no need to walk
  the free list for adjacent blocks to join.
* Minor cleanup.
2012-04-28 23:35:17 +02:00
Axel Dörfler 2f2f3fa042 Moved stable tool tip concept into the BToolManager class.
* This removes the fVisibleToolTip member from BView, and fixes bug #5669;
  BToolTipManager::ShowTip() now gets the owner of the tool tip as an extra
  parameter.
* Removed the work-around to hide that bug.
* Improved ToolTipTest application to include more test cases like a view that
  periodically update its tool tip via SetToolTip(const char*), and one that
  sets a new tool tip every second.
* Furthermore, added a test that shows that inner views inherit the tool tip
  of their parents.
* Fixed another bug in BToolTipManager::ShowTip() that would release an
  extra reference to the tool tip currently shown.
2012-04-28 22:14:03 +02:00
Axel Dörfler f790fa299e Added a tool tip for the detailed progress info.
* Got rid of the parentheses around the progress text.
* Automatic whitespace cleanup.
2012-04-28 22:14:02 +02:00
Axel Dörfler 254640bfcd Remove the tool tip if an empty or NULL string is set. 2012-04-28 22:14:01 +02:00
Axel Dörfler 6ea60bcdba This must be a 64 bit computation for disks larger than 4GB.
* This closes ticket #8460.
* Patch from jahaiku, thanks!
2012-04-15 13:32:19 +02:00
Axel Dörfler 8175a2c342 Fixed warning. 2012-04-01 13:06:59 +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
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 7a085ce095 Fixed debug build of the kernel emulation. 2012-03-31 21:27:55 +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 1674a53a45 Added recursive_lock_transfer_lock() to the fs_shell. 2012-03-31 00:09:47 +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 fd8b9d4326 Added a recursive_lock_transfer() function. 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
Axel Dörfler 647cff2e59 Imported BFS-Tools (without docs), added bfsinfo to the image.
* The sources are unchanged, and most of it doesn't follow Haiku's coding
  style -- stuff that I updated over the years might also have seen a coding
  style update.
* This was also the basis on which Haiku's BFS has been written.
* In the long run, the stuff in 'lib' that is already part of BFS should
  be removed, and used directly from BFS itself.
* I haven't yet added any other of the tools to the image. Not sure if they
  are ready for inclusion yet; 'recover' could also be renamed to reflect that
  it is BFS specific.
2012-03-26 22:48:07 +02:00
Axel Dörfler 87d5beae86 Made the duplicate_array endian safe. Cleanup.
* Renamed the sorted_array to duplicate_array (which was only a typedef
  before), and moved it into the BPlusTree.cpp file, as its specific to
  that one.
* Utilities.cpp is no longer needed.
* Introduced endian safe getters/setters so that little endian BFS volumes
  should now work fine on a big endian architecture.
2012-03-09 21:18:35 +01:00
Axel Dörfler 6307c1ebb1 Minor whitespace cleanup. 2012-03-09 21:18:34 +01:00
Axel Dörfler 08601a8488 Added support for reporting invalid B+trees.
* Fixed the inode progress not being overwritten by the final stats.
* Minor cleanup.
2012-03-07 01:55:02 +01:00
Axel Dörfler 49a2067a17 When running checkfs, BPlusTree::Validate() is now called. 2012-03-07 01:55:02 +01:00
Axel Dörfler 82e06fff68 Implemented BPlusTree::Validate().
* Walks the complete B+tree and checks all nodes for validity
  (duplicate/fragment as well), ie. if no key is larger than those of its
  parent, and that the left/right links are valid.
* This does not yet support repairing of broken trees, though.
2012-03-07 01:55:01 +01:00
Axel Dörfler 29a73026aa Added Volume::IsValidInodeBlock().
* The method checks whether a block may be occupied by an inode, ie. is neither
  part of the bitmap nor of the log, and would also fit on the disk.
* Also made disk_super_block::IsValid() const.
2012-03-07 01:55:01 +01:00
Axel Dörfler 7707f8cec2 Fixed warning when compiled with DEBUG=1 but an empty D(). 2012-03-07 01:55:00 +01:00
Axel Dörfler e7985acc3c Build fix -- accidently committed stuff that doesn't exist yet.
* Also removed debug leftover from register_additional_commands().
2012-03-01 09:34:46 +01:00
Axel Dörfler e9091262c5 Added "checkfs" as additional command for the bfs_shell. 2012-02-29 23:28:54 +01:00
Axel Dörfler 29ecf7b04e command_ioctl() leaked the root directory's file descriptor. 2012-02-29 23:27:46 +01:00
Axel Dörfler 360a644650 Implemented support for file system specific commands.
* File system specific shell implementations can now register any additional
  commands by implementing the register_additional_commands() function.
2012-02-29 22:12:37 +01:00
Axel Dörfler d452ff664c Added some reserved fields to BControlLook.
* This makes future changes less troublesome, although we should also add
  some virtual slots there (probably just dozens of it, though, that's why
  I was being lazy).
* Don't pass messages by value; they are copied twice this way.
* Minor coding style corrections, automatic whitespace cleanup.
2012-02-26 14:58:52 +01:00
Axel Dörfler 8f850dc003 Fixed the Switcher build after the not so recent layout changes. 2012-02-26 00:31:52 +01:00
Axel Dörfler f1553a0fc4 Made it pass the tests, simplified number comparison.
* Space after a number was not correctly handled (must be ignored).
* Better conceal the fact that I'm not always the brightest - the number
  comparison was pretty questionable :-)
2012-02-22 23:43:22 +01:00
Axel Dörfler 71171a7d8c Added unit tests for NaturalCompare() that currently fail. 2012-02-22 23:33:54 +01:00
Axel Dörfler f88aa5f760 Made NaturalCompare() accept NULL strings. 2012-02-22 23:32:09 +01:00
Axel Dörfler af8b1b77fa Fixed RemoteDesktop build that has been broken with hrev43319.
* Or more specifically, in 323b65468e, part of that revision (ie. the initial
  import from Oliver).
2012-01-10 23:05:01 +01:00
Axel Dörfler 7532547c06 Also hide the full screen controls when the mouse is over them.
* We just wait a little longer in this case, like 4.5s.
* Changed the code to only send the messages when needed, before they were
  being sent every 1.5s.
* However, this is untested as of yet, as the layout changes didn't allow me
  to run the MediaPlayer on my system. Will do so in a minute on another one.
2012-01-10 22:02:03 +01:00
Axel Dörfler 82a05afe30 Made the SRT parser a bit less strict.
* This allows to parse some SRTs that previously failed.
* Use the more expressive BString::IsEmpty() instead of Length() > 0.
2011-12-22 22:25:06 +01:00
Axel Dörfler 3692fd58c5 Minor cleanup, no functional change. 2011-12-15 00:55:10 +01:00
Axel Dörfler 410018c3ad Made mail_encoding a proper C++ file.
* This unbreaks the GCC2 build, thanks Matt!
2011-12-03 02:00:22 +01:00
Axel Dörfler 4bd5da8275 Minor cleanup, no functional change. 2011-12-03 01:10:00 +01:00
Axel Dörfler e2c30bd6c2 Forgot to include the Jamfile in the commit.
* The socket API is now actually available.
2011-11-22 00:00:33 +01:00
Axel Dörfler 362ae0a27e Added unimplemented copy constructor. 2011-11-21 23:57:19 +01:00
Axel Dörfler 29e07dd0eb Added a buffered DataIO subclass.
* Only the read path is tested so far.
2011-11-21 23:55:13 +01:00
Axel Dörfler 0e478f5aec Added experimental version of a Socket API with SSL support.
* Each class has a Socket() method to retrieve the underlaying file descriptor
  to be able to do the more advanced stuff, if necessary.
* A server socket is yet missing, but the rest is pretty much covered.
2011-11-21 22:07:52 +01:00
Axel Dörfler c80c50772e * Coding style cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43198 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-06 08:23:41 +00:00
Axel Dörfler 51b5d92eda * ArgumentList now inherits from BObjectList instead of aggregating it.
* Fixed BString::ICompare() checks.
* Minor other improvements.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43144 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-02 23:15:07 +00:00
Axel Dörfler 214853702f * Put ServerConnection into the BPrivate namespace as it should have been.
* Fixed completely broken error reporting; Write()/Read() will now return the
  proper error code (and ssize_t instead of int32).
* Reimplemented WaitForData() using poll() which is more efficient.
* Now uses BNetworkAddress to resolve the server address which also should now
  work with IPv6.
* Removed some unused headers.
* Minor coding style cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43141 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-11-02 22:56:50 +00:00
Axel Dörfler b47bd3cf51 * Work in progress of an IMAP response parser that will replace weak and
error prone parsing method that is currently utilized by the IMAP module.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43052 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-31 23:33:22 +00:00
Axel Dörfler 25342134e7 * Started a very simple test application for the IMAP add-on.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42995 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-30 11:00:09 +00:00
Axel Dörfler 4325056b3b * Busy looping without sleeping isn't so nice.
* Also allow upper case Y to please Michael :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42987 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-29 22:19:16 +00:00
Axel Dörfler ef88976995 * Reinitialize global locks after a fork (at least those in the Application
Kit).
* This should fix #5668.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42982 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-29 21:17:59 +00:00
Axel Dörfler 78fcc847a2 * Coding style cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42981 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-29 21:04:22 +00:00
Axel Dörfler edbfa1c70b * Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42978 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-29 20:52:52 +00:00
Axel Dörfler a9bd4e48eb * More minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42973 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-29 17:38:58 +00:00
Axel Dörfler d817520f98 * Removed some dead code by applying a patch by lucian from ticket #6275,
thanks!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42970 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-29 17:09:12 +00:00
Axel Dörfler 7781d9ad28 * Applied patch by 'mt' that fixes ticket #6275 - thanks a lot!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42968 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-29 16:48:16 +00:00
Axel Dörfler 3928c786a0 * Moved thread function into the class.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42947 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-29 12:22:56 +00:00
Axel Dörfler 4b2c09b6b3 * Style cleanup.
* Changed quote from double to uint64.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42946 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-29 12:16:11 +00:00
Axel Dörfler d396412d0b * Ordered methods in the order of their declaration.
* Minor coding style cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42945 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-29 11:32:55 +00:00
Axel Dörfler cdffe7e544 * Removed the license file as well, since it's just MIT.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42944 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-29 09:01:43 +00:00
Axel Dörfler 89cecb5a2a * Removed files that aren't really make any sense to have in our repository.
* Removed duplicated headers that we already have in our repository elsewhere.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42943 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-29 09:01:00 +00:00
Axel Dörfler f6e59c500a * Minor work in progress of getting the test to run again. Never found the time
to complete it, though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42813 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-09 18:35:39 +00:00
Axel Dörfler 49774900fb * Now sanitizes the white space in the header fields before adding them to the
message (ie. multiple spaces are compressed to a single one, tabs and other
  white space is replaced with a space).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42810 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-08 19:25:10 +00:00
Axel Dörfler ba91e5bbcd * Trim white space from the field names - this removes for example an extra
space in front of *every* attribute.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42809 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-08 19:03:57 +00:00
Axel Dörfler 0c7f804cec * mail_util.h was not self-contained.
* Added a few missing breaks in MailProtocolThread::MessageReceived()!
* Minor coding style update.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42808 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-08 18:41:20 +00:00
Axel Dörfler 1144475973 * Fixed build for non-x86 platforms.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42791 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-30 20:24:39 +00:00
Axel Dörfler a35bbf9fb3 * Coding style cleanup.
* The Read() method remembers the last error, so you don't have to check each
  read when you do several in a row.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42789 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-30 00:02:22 +00:00
Axel Dörfler f74afb8218 * This makes our app_server test_environment work again under Haiku.
* A small quiz for our build system gurus: if I just add libbe_test to
  liblinprog.a, I can't build the normal app_server anymore (only in the test
  environment). Why is that? And who's going to fix it? :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42788 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-09-30 00:00:56 +00:00