Commit Graph

51855 Commits

Author SHA1 Message Date
François Revol
ebc6d4d0b0 Add an icon for LZIP archive files 2014-10-27 23:49:31 +01:00
PulkoMandy
7db4f82528 Enable Werror for a few more targets. 2014-10-27 23:05:28 +01:00
Rene Gollent
f0baa913b6 Debugger: Add type selector to expression window.
- Allows one to choose the type which the current expression
  should be evaluated as.
- Don't attempt to evaluate expression if the input field is
  currently empty.
2014-10-27 13:54:21 -04:00
Rene Gollent
1cf8b1345e Debugger: Fix various problems in CLanguageExpressionEvaluator.
- Add missing initialization of current type when asked to
  evaluate new expression.
- Fix several problems with power handling.
2014-10-27 13:52:31 -04:00
Rene Gollent
1b629877b1 Debugger: Cleanups.
- Remove dependency on MAPM/ExpressionParser. Consequently also adjust
  CliDumpMemoryCommand, InspectorWindow and WatchPromptWindow to use
  CLanguageExpressionEvaluator for address input evaluation.
2014-10-27 11:52:28 -04:00
Rene Gollent
fc8713b02e Debugger: Rework expression evaluator.
CLanguageExpressionEvaluator:
- Revise to make use of Number class rather than MAPM. In the process,
  implement support for bitwise operators.

SourceLanguage/CLanguageFamily/CLanguageExpressionEvaluator:
- Adjust interface for expression evaluation to allow specifying the
  type to evaluate the expression as. Adjust implementing classes
  accordingly.

ExpressionEvaluationWindow:
- Adjust to new expression interface. For now defaults to 64-bit integer
  type, UI for type selection to be added.
2014-10-27 11:52:27 -04:00
Rene Gollent
1c6c5f3b57 Debugger: Add Number class for expression usage.
- This class abstracts out the underlying type of a value, and handles
  all the basic mathematical logical operators accordingly. Replaces
  the MAPM type previously used for these respective operations.
2014-10-27 11:52:26 -04:00
Adrien Destugues
5d5ec05b1d B*Format: make immutable and remove locking
The language and formatting conventions can now only be set when
creating the objects. This removed the needs for locking them when
formatting to avoid some other thread changing the format while it's
being used.

Adjust tests and DeskBar TimeView to the API changes.
2014-10-27 14:08:42 +01:00
Ingo Weinhold
fa80e7b28f x86 kernel args: Increase number of page tables 2014-10-27 10:57:28 +01:00
Rene Gollent
31b213c5ae Debugger: Implement evaluation of logical operators.
- CLanguageExpressionEvaluator now handles all the basic logical
  comparison operators. Bitwise operators still to come, as some
  of those may possibly require modifications to the MAPM library.
2014-10-26 23:44:24 -04:00
Rene Gollent
310f631263 Debugger: Rework expression tokenizer.
- Separate operator parsing out into its own function, and refactor
  it to handle multi-character operators. These aren't yet handled
  by the parser itself though.
2014-10-26 23:18:53 -04:00
Rene Gollent
076135838d Debugger: Locking cleanups.
- Using BMessenger as an indirect lock is unnecessary, as
  BLooper::Lock() checks if the current looper is valid via the global
  looper list directly.
- Fix race conditions. When asked to show various subwindows, lock them
  before calling Activate(), as the window could otherwise potentially
  quit in between us checking pointer validity and calling Activate().
- _GetActiveSourceLanguage() needs to acquire a reference to the language
  object in the case where it's retrieved from the active source code.
  Otherwise, an unbalanced release would take place when creating the
  expression window, leading to crashes.

Thanks to Stephan for reviewing.
2014-10-26 22:30:20 -04:00
Rene Gollent
23153211e5 Debugger: More tweaks to expression window.
- If expression evaluation fails in some way, report it in the result
  view, rather than popping up a BAlert for it.
- Set minimum size on input field.
2014-10-26 22:30:19 -04:00
Ithamar R. Adema
ed04ffb598 ARM: keep all pages we've mapped during kernel startup
Don't just keep the page directory, but also the actual allocates
pages for the pagetables we've created.
2014-10-26 23:43:35 +01:00
Ithamar R. Adema
475f00372b ARM: remove annoying #warning
Although done with the best intentions, the usage of #warning in the
ARM build makes it hard to see what's going on, or see any "real"
warnings.

Remove at least this particularly often triggered one, so we can
have a relatively "quiet" build again...
2014-10-26 23:40:17 +01:00
Stephan Aßmus
4b930cca9c HaikuDepot: Work in progress on featured packages
Not yet visible. But the package list area in the main window has a card
layout now and a second (hidden) page for featured packages. Which packages
are visible there will depend on the prominence value from the web-app
and other parameters later (suggestions based on packages already installed
and user-ratings). At the moment, there is no mechanism for updating the
package list when package info is retrieved asynchronously, even from the
cache. Also, the view should switch to the list when searching and perhaps
in other situations as well, like selecting a category or when no packages
would be featured. And clicking featured packages does not yet select them in
the info area...
2014-10-26 23:37:18 +01:00
Stephan Aßmus
f545fe6acc HaikuDepot: Extracted MarkupTextView into its own files 2014-10-26 23:37:17 +01:00
Stephan Aßmus
7631f91496 HaikuDepot: Beginnings of "featured packages" view
Currently a vertically scrollable container for views which are similar
to the title area in the package info view (and share most code, but it
will diverge later on). Untested and not yet used.
2014-10-26 23:37:15 +01:00
Stephan Aßmus
73a3f44915 HaikuDepot: Extracted MessagePackageListener...
... from PackageInfoView into its own files.
2014-10-26 23:37:14 +01:00
Stephan Aßmus
7d0ce97b27 HaikuDepot: Extraced LinkView and ScrollableGroupView...
... from PackageInfoView.cpp into their own files in ui_generic.
2014-10-26 23:37:13 +01:00
Stephan Aßmus
cb9a077fde HaikuDepot: Implemented "opening" installed packages
Package contents are scanned to find deskbar links. If a package has less
than four links, they will be offered in separate "Open <link name>" buttons
in the package info area. Usually, this results in one button to open the
main application from the package. If the heuristic proves to be not good
enough, this could be improved of course.
2014-10-26 23:37:12 +01:00
Stephan Aßmus
2d2824bfff HaikuDepot: Store package file name in PackageInfo
Also removed misplaced WIP functionality to find deskbar links
2014-10-26 23:37:10 +01:00
Stephan Aßmus
ad5bc044c5 HaikuDepot: Make sure to pick up changed package action labels 2014-10-26 23:37:09 +01:00
Ithamar R. Adema
35afac0769 ARM: add DTS files required for Beagle-XM target
These were taking from mainline Linux (arch/arm/boot/dts)
2014-10-26 23:25:58 +01:00
Ithamar R. Adema
a17ff8279b ARM: make sure we cleanup after the bootloader
The "2nd" assert that we always ran into was due to bootloader mappings
still being active after VM init. Turns out we missed a call in the
architecture specific code for cleaning this up.

Many thanks to Ingo for spending the time to figure this out!
2014-10-26 23:23:30 +01:00
Ingo Weinhold
4ce1f197fa x86 boot loader: check gKernelArgs.arch_args.pgtables overflow 2014-10-26 22:34:52 +01:00
Rene Gollent
ed489ba831 Debugger: Minor tweaks to ExpressionEvaluationWindow.
- Set invocation message on input text control.
- Set unlimited max size on input/output text views to allow
  window resizing.
2014-10-26 16:49:30 -04:00
Rene Gollent
e3581569c7 Debugger: Hook in expression evaluation window.
- Adjust expression window interface so it can report being closed
  to TeamWindow or whoever else invokes it.
- Add a menu item to Tools to request expression evaluation. This
  now attempts to get the expression evaluator for the current language,
  and subsequently opens the expression evaluation window with it.

With these changes, basic numerical expression evaluation works.
Resolution of variable values and condition operators aren't yet
handled.
2014-10-26 16:26:39 -04:00
Rene Gollent
a1cad33d1e Debugger: Implement evaluation hook for CLanguageFamily.
- Add override for EvaluateExpression(), and hook it up to
  CLanguageExpressionEvaluator. Note that for the moment it assumes
  the expression will result in an integer value.
2014-10-26 16:26:39 -04:00
Rene Gollent
02bb190861 Debugger: Style fix. 2014-10-26 16:26:38 -04:00
Jonathan Schleifer
c9dd05ff40 configure: Add variable to see if we're bootstrapping 2014-10-26 21:07:57 +01:00
Adrien Destugues
c0e645210a Add packages for Giddy3 and imagemagick.
* Also fix SDL which had a problem with OpenGL viewport size
initialization.
2014-10-26 20:28:23 +01:00
Adrien Destugues
850f2d1e58 Add the at() method to C++ vectors.
* There is no reason not to have this.
2014-10-26 20:28:21 +01:00
Rene Gollent
4501776089 Debugger: Style fixes. 2014-10-26 14:11:25 -04:00
Rene Gollent
cda38afb68 Debugger: Initial GUI for expression evaluation.
- Add a simple interface window for expression evaluation. Not yet
  accessible from the team window.
2014-10-26 14:11:24 -04:00
Ingo Weinhold
1714eaf29e pkgman resolve-dependencies: Add --debug option 2014-10-26 13:41:00 +01:00
Ingo Weinhold
f76e8e9d92 Terminal: Fix pagewise scrolling in alternate screen buffer mode
It still used the old modifiers. Now it's shift as elsewhere.
2014-10-26 13:19:45 +01:00
Michael Lotz
831abecd6a kernel: Fix unbalanced release of sync object in FD select race.
When a file descriptor is closed between being selected and adding the
select info to its IO context, the select info needs to be cleaned up.
This is done by deselect_select_infos() which unconditionally also put
the select_sync associated with the infos. In this special case we do
not yet hold a reference to the select_sync however, so avoid putting
the corresponding sync object.

Fixes #11098, #10763 and #10230.
2014-10-26 00:30:08 +02:00
Stephan Aßmus
a88f2beb0f Make HaikuDepot the preferred app for .hpkg files.
Note that double clicking a .hpkg in one of the packages folders will
not yet have a sensible result. I think it should open the regular
HaikuDepot with the full packages list, default to show installed packages
only and pre-select the package that was double clicked. It would be tricky
however if more than one installed package file is opened at once.
2014-10-26 00:25:19 +02:00
Ingo Weinhold
dd15db954b pkgman: Add --debug option for most commands
* Add CommonOptions class and add an instance to Command. It supports a
debug level.
* full-sync, install, search, uninstall, update: Add option --debug.
This allows getting some debug output from the solver in cases where
the result seems weird.
2014-10-26 00:19:35 +02:00
Ingo Weinhold
d228f29f6e BPackageManager: Add SetDebugLevel()
Sets the debug level of the solver.
2014-10-26 00:19:35 +02:00
Ingo Weinhold
74b582a4e5 BSolver: Add SetDebugLevel()
In LibsolvSolver set the debug level of the pool.
2014-10-26 00:19:35 +02:00
Stephan Aßmus
5f52e82c00 HaikuDepot: Some work in progress to prepare "opening" packages
The idea is to parse packages for Deskbar links and offer to "open" them
once they are installed. The added functionality is not yet complete and
will eventually figure out the file system location of a package and parse
the contents. I am mainly pushing this since my git-foo is limited and
I want to push the fix for the discovered deadlock.
2014-10-26 00:13:48 +02:00
Stephan Aßmus
6b147523f1 HaikuDepot: Fixed potential dead-lock in package list refresh.
When the package list was refreshed while package info was still being
pulled from the web app, calling Model::Clear() with the model lock already
held could lead to a dead-lock: The package populator could block on the
model lock to update information, while StopPopulatingAllPackages() waited
for the thread to exit, but held the lock that the thread was blocking on.
So call StopPopulatingAllPackages() before grabbing the lock and calling
Clear() in MainWindow::_RefreshPackageList().
2014-10-26 00:13:47 +02:00
Ithamar R. Adema
9c71c67140 ARM: Fix OMAP3 framebuffer divider setting
QEMU was crashing since when setting the DSS divider we were _clearing_
the TV divider, and QEMU did not check for a divide by zero.

This "fixes" the QEMU crash and gets us a working framebuffer on Beagle ;)
2014-10-25 14:49:51 -07:00
Jonathan Schleifer
1436138938 Update icu_bootstrap
Our code wouldn't compile with the old one anymore (issuing warnings
when -Werror is enabled).
2014-10-25 23:16:57 +02:00
Rene Gollent
72654b61cc Debugger: Add initial skeleton for a C-style expression evaluator.
- Adds a stripped down version of ExpressionParser from libshared,
  which will eventually be modified to support various other capabilities
  needed for debug expressions. Not yet used or complete.
2014-10-25 16:51:09 -04:00
Rene Gollent
732fd84401 Debugger: Add interface for expression evaluation.
SourceLanguage:
- Add a virtual to the language base class that requests expression
  evaluation.
2014-10-25 16:50:45 -04:00
Axel Dörfler
50d274f7f9 fs_shell: Added missing new permission check function.
* Fixes the build.
2014-10-25 19:31:15 +02:00
Axel Dörfler
5a95af70a2 vfs/{b|btr|package|b}fs/ext2/exfat: common access check.
* Added VFS helper function check_access_permissions() that combines
  several partially correct versions to the one true version (tm).
* All but BFS (since recently) missed the S_IXOTH for root on directories,
  and all but packagefs missed proper group handling.
2014-10-25 18:47:15 +02:00