Commit Graph

4133 Commits

Author SHA1 Message Date
Jonas Sundström
12d8a9f85b Introducing BAboutMenuItem.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40956 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-03-15 01:04:41 +00:00
Ithamar R. Adema
e59aab0981 ARM: Some header cleanup in preperation of more CPU support code...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40948 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-03-14 13:48:21 +00:00
Jonas Sundström
ed7ee7a432 Localization support for filesystem entries in Tracker and Deskbar (leaf menu). (It appears to work, but is likely incomplete and quite possibly incorrect.) Fix issue with RosterData::Refresh() resulting in a B_LOCALE_CHANGED broadcast, and Deskbar looping. Add a global boolean gLocalizedNamePreferred to avoid calling BLocaleRoster::Default()->IsFilesystemTranslationPreferred() too often from Model instances. Following Tracker code style in libtracker, so as to not mix in too much clean-up.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40922 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-03-12 00:53:30 +00:00
Jonas Sundström
07cffb4786 Introducing a Locale option to display localized filesystem entries (primarily apps and folders) in Deskbar, Tracker, etc. Making use of this in Deskbar's list of apps. The option currently defaults to off, to avoid exposing everyone to unfinished work.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40918 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-03-11 19:52:15 +00:00
Jérôme Duval
0f4ab8dfd3 Comparing with i915 DRM:
* add a INTEL_TYPE_915M type to be used by 0x2592 (mobile version)
* 0x2e32 is actually non mobile, added its brothers 0x2e02, 0x2e12, 0x2e22, 0x2e42, 0x2e92
* 0x27a2 is actually mobile.
* added 0x2972, 0x2982, 0x2992 for INTEL_TYPE_965 type, and 0x2a12 for INTEL_TYPE_965M.
* added corresponding entries in intel_gart.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40838 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-03-06 11:57:20 +00:00
Oliver Tappe
e8226ce48d * fix support for influencing tzset() via TZ environment variable
(now at least <std> and <offset> are supported properly)
* instead of creating a TimeZone object whenever needed, we now
  create it in tzset() and keep it around
* add tests for TZ to locale_test

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40788 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-03-03 00:34:51 +00:00
Jérôme Duval
bafa759148 now correctly init the thread id in the pthread struct for main thread and threads spawned with spawn_thread(). This definitely helps for #7235.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40665 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-24 17:28:59 +00:00
Clemens Zeidler
379df1cc3c Move #define from E-mail.h to mail_util.h. Thx Jerome.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40605 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-21 23:16:08 +00:00
Clemens Zeidler
d773c5bf4c If not in "mark automatically as read" mode mark the mail as seen. Fix selection of this option in the preference window. Fix some read/unread bugs.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40595 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-21 09:52:41 +00:00
Clemens Zeidler
9967dfd924 - Extend MarkMailAsRead to take a flag not only a bool value. Write an additional MAIL:read attribute.
- Remove some hard coded paths.
- Catch failure of FindMessage correctly. Thanks Axel.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40593 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-21 07:24:29 +00:00
Stephan Aßmus
804c69ca06 Moved IconButton from LaunchBox (actually the updated version from WebPositive)
into libshared.a as BPrivate::BIconButton. Removed some outdated functionality
as well (now only uses BControlLook for drawing, cleaned up custom drawing).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40587 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-20 22:33:05 +00:00
Clemens Zeidler
7ab6cb9ac5 Copy sent mails to /boot/home/mail/sent. Hope that makes more clear if a mail should be send (in out folder) or already has be sent.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40570 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-20 03:54:28 +00:00
Oliver Tappe
1d8dff0197 * improve locale roster to no longer rely on static object
initialization order
This was meant to fix #7227, but just seems to have bypassed it - the crash is now somewhere else ... needs more investigation

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40529 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-16 15:27:33 +00:00
Oliver Tappe
f5644b8d3b * prefer HashSet and HashMap to respective std-classes where possible
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40518 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-15 18:52:03 +00:00
Axel Dörfler
3d0d4b6200 * Implemented a way to specify additional debug options via MALLOC_DEBUG when
using libroot_debug.so, instead of having to hardcode them in the application
  via calling private heap functions.
* The following options are implemented: 'p' turns on paranoid validation,
  'w' triggers periodic wall checking every 500ms ('W' does the same, but every
  100ms), 'g' to use guard pages (beware, this will dramatically increase
  memory usage), and 'r' which forbids reusing of memory, freed memory is never
  actually freed.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40514 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-15 17:54:24 +00:00
Oliver Tappe
2b6e6760b6 * add listing of repository attributes to 'package_repo list'
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40508 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-15 12:48:02 +00:00
Oliver Tappe
34d56c1bf5 * implemented repository reader and fixed some bugs in writer that
have been exposed during testing of reader

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40494 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-14 20:25:10 +00:00
Oliver Tappe
c2388992ec * added embedding of license texts that need approval into repository
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40491 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-14 17:24:50 +00:00
Oliver Tappe
ad6a8dbe2b Pulled reusable stuff from PackageReaderImpl into new class ReaderImplBase.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40485 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-14 13:09:09 +00:00
Oliver Tappe
05b101b223 Cleanup following up on r40466:
* remove commented methods no longer being used


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40471 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-12 22:09:47 +00:00
Oliver Tappe
33bc4425be Largish adjustments to PackagerReaderImpl and package attribute
handling:
* package attributes are now compatible with the low level attribute
  handling of other HPKG attributes (such that 'package dump' now shows 
  package attributes, too)
* dropped type names from hpkg format, the attributes were identified
  by IDs already and this simplifies the code considerably. Type names
  are now handled in BLowLevelPackageHandler only.
* instead of rolling their own mechanism, high-level package attributes 
  handling is now implemented via a corresonding set of 
  AttributeHandler-subclasses
* adjusted package writer to only write package attributes that are
  needed (empty ones are left out)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40466 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-12 19:21:37 +00:00
Oliver Tappe
4dcc52327b Fix problems in repository writer
* actually write the checksum
* compress the repository info archive, too (handle it as separate
  section)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40426 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-10 19:05:35 +00:00
Oliver Tappe
91ebce663d Some cleanup, no functional change
* typedef base classes as 'inherited' and use that instead of the
  explicit base class name
* remove superfluous scopes in case blocks


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40420 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-10 17:16:35 +00:00
Jérôme Duval
245df7abd3 added exFAT partition type
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40410 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-09 20:30:00 +00:00
Oliver Tappe
0d68f6afb3 Implemented repository writing:
* fleshed out RepositoryWriterImpl
* renamed BRepositoryHeader to BRepositoryInfo (in accordance with
  BPackageInfo)
* adjusted BRepositoryInfo to be able to parse itself from a
  driver_settings file
* added package_repo binary (only 'create' works as of yet)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40405 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-09 19:11:23 +00:00
Clemens Zeidler
1af4fa4ba6 Major restructuring of the mail server:
Accounts are now stored in a separate file. Previously they where somehow magically assembled from the chain ids. Now its possible to remove a account temporary by removing the account file form the account folder.

Each account could have an inbound protocol, an outbound protocol and some filters.

Mails are now associated with an account and not with a chain. This required to replace the chain id attribute by an account attribute.

Replace BMailFilter and BMailChain by a less general approach. Basically the chain had a list of filters and call the ProcessMailMessage for each filter. This made it sometime difficult to understand what is going on, e.g. sometimes a filter used information gathered by another filters. The new MailProtocol and MailFilter classes are calling more dedicated hook functions, e.g. HeaderFetched or MessageReadyToSend.

As before all MailProtocol's (plus their filters) are running in their own thread.

Cleaned up the error and status window a bit. Abstracted the interface to these windows. Should be easy to write a BNotification api back-end now.

Parsing of mail headers is much faster now. Fetching the headers of a large mailbox takes ~min and not ~hour now! Initial checkout time is in the same order like Opera. The problem was the massive use of fgets in parse_header (mail_util.cpp) now the complete header is read in one go. Furthermore, only interesting fields are extracted.

Remove some unused files, BeOS relicts... Feel free to translate the mail server and remove the own language system (headers/private/mail/MDRLanguage.h).

Sorry for the remaining old (and new) coding style issues, sometime just ignore them, to many :(



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40397 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-09 01:49:01 +00:00
Oliver Tappe
8b94d2ff6a * add stubbed RepositoryWriter to build
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40394 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-08 20:15:50 +00:00
Oliver Tappe
d77c6cd26a * implemented checking of licenses, such that it is no longer possible
to create a package that refers to a license that is not a system
  license or contained in the package
* added package-info flags (currently only approve_license and 
  system_package)
* adjusted package-reader/writer and pkgman accordingly

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40393 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-08 19:50:36 +00:00
Oliver Tappe
79f15e1918 * minor cleanup: respect 80 chars limit
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40390 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-08 15:19:26 +00:00
Oliver Tappe
4ee7d007d6 Cleanup:
* PackageWriterImpl no longer accesses members of WriterImplBase 
  directly, but uses getters/setters instead
* package attribute registration has been moved from PackageWriterImpl
  to WriterImplBase, as it will be used in the same manner by the
  RepositoryWriter


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40388 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-08 10:59:38 +00:00
Oliver Tappe
f202217364 Refactoring step towards implementation of RepositoryWriter:
* pulled commonly useful parts out of PackageWriterImpl into 
  WriterImplBase
* moved CachedStringTable and related methods into a separate class,
  StringCache, in order to support having more than one string cache
  per package file
* made package attribute section use a string cache, too, as that's
  going to be very useful for repositories
* instead of writing package attributes directly, we now collect
  corresponding PackageAttributes and write those later
* adjusted package reader accordingly


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40376 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-07 22:25:16 +00:00
Oliver Tappe
aaf05784d4 * some rearrangements and renames with respect to public/private
types and defines of HPKG
* added header, magic and version for haiku repository format

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40370 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-07 13:04:00 +00:00
Oliver Tappe
884a0b23cb * cage the somewhat ugly duality between TOC and package attributes
section access into the SectionInfo structure, of which 
  PackageReaderImpl now keeps two instances and a pointer to the
  current of these two


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40359 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-04 22:42:56 +00:00
Oliver Tappe
fd9c0b3361 * added support for compressing the package attributes section to
PackageWriterImpl
* added my own copyright

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40358 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-04 22:40:10 +00:00
Oliver Tappe
6f0278cdc9 Implemented reading of package info attributes from hpkg file
* added kernel-compatible datatypes for reading package info attribute 
  values (PackageInfoAttributeValue.h) - these will be used at a later
  stage by the package-fs to transport those attributes to userland
  when asked to do so (by ioctl)
* implemented parsing of package info attributes in PackageReaderImpl
* added support for compressed package attribute section to 
  PackageReaderImpl
* completed the writing of package info attributes in PackageWriterImpl
  and fixed a couple of bugs exposed by parsing
* adjusted 'package list' to show the package info attributes as they
  are found


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40354 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-04 17:43:07 +00:00
Oliver Tappe
68dc1eb6ad * implemented writing of package attributes to hpkg file
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40348 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-01 22:01:44 +00:00
Oliver Tappe
bc1bd8bac0 * updated copyright section for NaturalCompare according to commit
logs (the OpenTracker license doesn't apply since NaturalCompare
  was never part of OpenTracker).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40341 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-02-01 11:25:36 +00:00
Oliver Tappe
7fd711ef99 * refactored PackageWriter(Impl) to no longer print anything itself,
but publish that info through a BPackageWriterListener
* adjusted 'package create' to print a package summary by default and 
  more verbose info upon request.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40332 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-31 15:43:33 +00:00
Oliver Tappe
15a5c3f7d9 * follow hint by Axel: drop FDCloser and use shared class
FileDescriptorCloser instead


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40330 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-31 09:40:37 +00:00
Oliver Tappe
ae53f5526b Fixed an oversight of yesterday's restructuring:
* FDCloser is private, so it should live in BPackageKit::BHPKG::BPrivate
* adjusted 'package' binary to no longer use FDCloser (trivial)
* minor cleanup in command_extract.cpp

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40329 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-31 08:50:37 +00:00
Oliver Tappe
95d84e4176 * attributed copyright in all public HPKG headers to Haiku, Inc.
* added my own copyright to a couple of files that I changed


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40321 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-30 15:15:33 +00:00
Oliver Tappe
5fb1c6ff1f Refactored hpkg implementation to provide some separation between
public and private API (still far from ideal, but a start):
* moved several HPKG-classes into the public namespace BPackageKit::HPKG
* added fImpl-wrappers around PackageReader and PackageWriter to hide
  most of the gory details
* adjusted 'package'-binary and packagefs accordingly


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40320 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-30 15:05:38 +00:00
Brecht Machiels
2f4d9fdbab * added support for the Atom IGD, based on the X driver sources (fixes #6202)
* fixes G4x PLL limits


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40319 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-29 21:20:00 +00:00
Oliver Tappe
9daff3323b * moved NaturalCompare() from libtracker.so to libshared.a, in order
to make it available elsewhere


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40307 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-28 11:05:26 +00:00
Oliver Tappe
0d6b3b20e1 More work on package kit:
* added class BPackageInfo, which contains packaging attributes of
  a package (the values relevant for package management) 
* implemented parser (mostly) for reading a BPackageInfo from a config
  file (.PackageInfo) in order to pass them on to the PackageWriter 
  when creating a package
* pulled hpkg-related stuff from bin/package into the package kit
* adjusted packagefs-Volume to skip .PackageInfo files when populating
  the mountpoint, as those files shouldn't appear as part of an
  activated package


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40301 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-27 23:17:03 +00:00
Oliver Tappe
733c783dc9 more work on package kit:
* rip BRepositoryHeader out of BRepositoryConfig and add support
  for it to BRepositoryCache
* implement repository removal
* some minor cleanups


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40290 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-25 19:36:09 +00:00
Oliver Tappe
7d7ed9bf4b Mostly style-related changes to package kit:
* drop 'Haiku' namespace
* rename 'Package' namespace to 'BPackageKit'
* renamed all public classes to begin with a 'B'
* renamed BPackageKit::Roster to BPackageKit::BPackageRoster to not
  clash with the BRoster from the application kit.
* fix some instances of public headers including private ones

Some functional changes, too:
* JobQueue now removes and deletes dependants of failed jobs 
  automatically
* JobQueue supports waiting for jobs to become runnable
* added a couple of InitCheck() methods where they make sense
  and invoke those in users of these classes



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40287 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-25 17:07:27 +00:00
Oliver Tappe
35edda8f0b * more work on the package kit, repositories can now be added and
refreshed


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40280 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-24 20:48:03 +00:00
Oliver Tappe
11a4ecfd82 * added support for interactive decisions to package kit and pkgman
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40268 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-22 19:30:21 +00:00
Oliver Tappe
500bb6305c * WIP-commit of the first parts of the package kit and the pkgman
(console-)tool


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40261 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-21 22:18:58 +00:00
Oliver Tappe
8e407ca0e8 * err, 40255 was missing the essential part, actually
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40257 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-20 20:55:45 +00:00
Oliver Tappe
84f05bd08b * fix build problem on Haiku hosts caused by recent move of
ObjectList.h into public header space


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40255 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-20 18:52:21 +00:00
Oliver Tappe
915a7b8c24 Make BObjectList<> publically available:
* cleaned up ObjectList.h
* switched several uses of new() to new(std::nothrow)
* moved ugly AsBList() hack into BObjectList<>::Private class and
  adjusted all callers accordingly


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40252 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-20 12:09:16 +00:00
Oliver Tappe
137c5fe2ba * add implementation of bindfs, which can be used to bind-mount
a folder to some other place in the filesystem hierarchy
* add helper function to VFS that encapsulates the "conversion" of a
  vnode-pointer to a fs_vnode-pointer (used by bindfs)

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40238 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-16 16:33:11 +00:00
François Revol
8dfd99a91c Build fix for r40196. Should now be back to previous state (breaks at vm stuff).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40229 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-13 12:29:15 +00:00
Philippe Houdoin
67938b0d59 Switched boot splash compression to use boot_zlib (which was already
used by tarfs anyway) instead of RLE.
While this should allows larger logo/icons, it doesn't remove the
current 300000 bytes size limits for haiku_loader, so #6710 is not yet fixed.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40215 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-12 15:43:14 +00:00
Ingo Weinhold
4535495d80 Merged the signals branch into trunk, with these changes:
* The team and thread kernel structures have been renamed to Team and Thread
  respectively and moved into the new BKernel namespace.
* Several (kernel add-on) sources have been converted from C to C++ since
  private kernel headers are included that are no longer C compatible.

Changes after merging:
* Fixed gcc 2 build (warnings mainly in the scary firewire bus manager).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40196 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-10 21:54:38 +00:00
Jérôme Duval
23281fb2c1 Moved Easter holidays methods to a Holiday class, an hopefully better place.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40125 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-05 18:00:31 +00:00
Ingo Weinhold
0536ff83e9 * IS_KERNEL_ADDRESS(): Avoid the check against KERNEL_BASE or KERNEL_TOP, if
that's the limit of the addr_t domain anyway.
* Defined IS_USER_ADDRESS() to !IS_KERNEL_ADDRESS(), which semantically it was
  already, just more verbosely.

Should, in the future, avoid hundreds of useless Coverity tickets where the
macros are used.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40093 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-03 17:56:04 +00:00
Ryan Leavengood
9530027447 Apply patch from augiedoggie for #6258 which adds Athlon Phenom II's to the CPU
identification list.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40087 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-03 04:10:56 +00:00
Ingo Weinhold
a0d93d1416 * VMCache::Unlock(): Renamed local variable consumerLocked to avoid shadowing
the parameter (CID 5329).
* _MergeWithOnlyConsumer(): Removed the somewhat weird consumerLocked
  parameter. The caller can unlock itself, if desired. Improves Unlock()
  readability.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40084 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-03 00:44:40 +00:00
Oliver Tappe
db03311342 Closing #7056:
* inherit umask of calling process to images loaded via exec...()

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40071 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-01-02 19:12:19 +00:00
Ingo Weinhold
d23cadce4c [_{kern,user}_]{start,stop}_system_watching()
-> [_{kern,user}_]{start,stop}_watching_system()


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39872 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-16 17:01:23 +00:00
Ingo Weinhold
756b64fd83 * Removed the obsolescent [B]Reference[able] API and replaced the remaining
uses. Fixes the gcc 2 acpi build.
* Renamed WeakReferenceable::{Add,Remove}Reference() to
  {Acquire,Release}Reference() for consistency.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39871 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-16 16:35:42 +00:00
Ingo Weinhold
88e38c178a Replace uses of obsolescent BReference[able] API.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39870 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-16 14:29:37 +00:00
Ingo Weinhold
d2bf328d72 Implemented a generic system watching mechanism with a userland API. Currently
only a few events can be watched (team creation/deletion/exec, thread creation/
deletion/name changes). The functions start_system_watching()/
stop_system_watching start/stop watching events.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39862 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-16 01:49:52 +00:00
Ingo Weinhold
4ebc8f615d * Added a "name changed" notification to the thread notification service.
* Added a "team" field to the notification events.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39861 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-16 01:44:15 +00:00
Ingo Weinhold
2d8d1cdbaa * Implemented a generic way to associate data with a team which is
automatically cleaned up when the team is deleted: Class AssociatedData is
  the base class for a data item, AssociatedDataOwner a container for them
  (struct team derives from it). Functions team_associate_data() and
  team_dissociate_data() add/remove data.
* Turned sTeamHash into a BOpenHashTable (necessary since struct team is no
  longer a POD).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39860 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-16 01:15:35 +00:00
Ingo Weinhold
eeecbf6fb8 The header is no longer included from pure C sources, so we can finally freely
use C++.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39859 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-15 23:18:13 +00:00
Axel Dörfler
98e25dc3f9 * The net_server now tries to join the network via wpa_supplicant, if available.
* Add some output when automatically joining a network.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39851 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-14 20:22:18 +00:00
Rene Gollent
27a115f668 Revert r39846 and r39847.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39849 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-14 17:55:38 +00:00
Rene Gollent
7040b50df5 Add support for thread rename and priority change notifications to the
debugger API/message set.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39846 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-14 05:08:47 +00:00
Rene Gollent
6cdfe5505c Add write counterparts to debug_read_memory/debug_read_memory_partial.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39843 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-13 23:27:59 +00:00
Stephan Aßmus
445751e17a Refactored AddOnMonitor to allow an alternative constructor which does not
yet take the AddOnMonitorHandler (and also does not Run() the looper
automatically). Added SetHandler() method which allows to set the handler
afterward. Does not require updates in existing clients.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39740 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-12-05 14:59:27 +00:00
Jérôme Duval
4264efcc6b * added definitions for SCSI_OP_VARIABLE_LENGTH_CDB, SCSI_SAI_READ_LONG and SCSI_SAO_WRITE_LONG
* cleanup


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39683 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-30 18:45:53 +00:00
Adrien Destugues
a8e3ab4f46 Enable the VBlank interrupt on pipe B for LVDS panels. This gets it working for me. Most stuff using BDirectWindowand synced drawing should now work better (\n and TVBack demos for example)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39655 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-26 20:36:40 +00:00
Ingo Weinhold
07655104d5 Eliminated _acquire_spinlock(). Since the macro is defined after
acquire_spinlock_inline(), there's actually no undesired recursion.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39647 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-26 13:55:20 +00:00
Ingo Weinhold
c07db2ec3f * elf_find_symbol(): Skip undefined symbols and symbols with the wrong binding.
* Implemented missing handling of symbolically linked images and of weak
  symbols.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39646 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-26 13:32:24 +00:00
Jérôme Duval
93ca791b70 * added math.h missing prototypes like log2f. This fixes #6802.
* whitespace cleanup and renamed log2() to radeon_log2 (conflicts with log2 in math.h)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39620 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-24 23:42:17 +00:00
Axel Dörfler
e3feb1f8af * Added a new AS_DUMP_BITMAPS command.
* Extended app_server_debug command to be able to send it, too.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39599 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-23 21:50:12 +00:00
Axel Dörfler
60fed7e077 * Moved the shared part of NetServer.h into a new private header.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39597 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-23 21:44:37 +00:00
Philippe Houdoin
172971a18f Switch link speed unit to bit/s to support low bitrate speed too
(hello slow dialup line...)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39581 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-23 13:35:30 +00:00
Ingo Weinhold
25dc253d6a * Merged weak-symbols branch.
* Fixed trivial merge conflict in src/system/libroot/posix/locale/nl_langinfo.cpp
* Fixed gcc 2 compilation of src/system/glue/init_term_dyn.c.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39571 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-22 13:06:36 +00:00
Clemens Zeidler
9ff327dea3 - Make MessageForListener a bit more flexible, passing a fix ServerLink is sometimes not enough and a separate sender and receiver is needed.
- Add communication part to restore and save S&T groups.
- Fix call of GetDecoratorSettings listener hook.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39534 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-20 06:47:20 +00:00
Clemens Zeidler
da1c93175d Revert r39462 because it was not really binary compatible.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39469 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-17 22:19:09 +00:00
Clemens Zeidler
a5cf354a27 Add protected RestoreState, SaveState functions to BApplication. HasBeenRestored can be used to check in ReadyToRun if the RestoreState function has been called. The default implementation just store the window geometry and the decorator settings. Subclass implementations can use the global restore_window_geometry, save_window_geometry function for convenience. Please review. Will commit a simple session manager tomorrow.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39462 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-17 04:38:48 +00:00
Ingo Weinhold
56d734a1aa Added new private API to get more information on a team:
* Userland interface: get_extended_team_info().
* Syscall: _kern_get_extended_team_info.

Only partially implemented yet.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39453 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-16 19:42:08 +00:00
Axel Dörfler
1d219b3a25 * Added AS_DUMP_ALLOCATOR command that dumps an applications memory allocator to
the syslog/serial output.
* Added app_server_debug command that currently just sends this command to the
  specified teams.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39441 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-15 21:25:03 +00:00
Oliver Tappe
de2e54ace0 Adjust tzset() implementation to better follow the POSIX specs and
make some more perl tests happy.
* no longer expect a ICU timezone ID in the TZ environment variable,
  but only expect this format if the TZ-value is starting with ':'
* accept "standard" TZ-values like "EST5" (of which only "EST" is
  relevant to us) - if such a value is specified, we hardcode the
  timezone name to the given value, no matter how ICU calls it
* adjust tests accordingly


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39415 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-13 01:13:38 +00:00
Axel Dörfler
4f1ec5b242 * Made bosii header self contained.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39390 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-10 21:54:47 +00:00
Michael Pfeiffer
9b07d9f0fe * Renamed files, classes and constants from
PrintServerAddOn to PrintAddOnServer.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39358 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-08 18:43:55 +00:00
Michael Pfeiffer
61729fe266 * Added application print_server_add_on that is used
by the print_server to run a printer driver add-on.
  This makes the print_server
  1) resistant to add-on crashes
  2) and memory leaks in add-ons
  3) license of an add-on cannot influence the
     license of the print_server since it does not
     directly load the add-on anymore; might be
     an issue with GPL printer drivers like Gutenprint
 
  Transport add-ons directly loaded by the print_server
  should be moved outside the print_server too.
  Right now I am not aware that the transport add-ons
  in the repository have any of the issues.
  The Gutenprint driver has 2 + 3 that was the main
  motivation to implement that now. 

  Disabled for now until the launch issue is resolved.
  BRoster does not find the application by its
  signature until it is opened in Tracker once.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39346 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-07 17:13:55 +00:00
Stephan Aßmus
4c9da6dc09 Applied patch by kaliber from ticket #6349. which fixes quite a
few warnings. Thanks! I did not apply the hunks about moving
a logging function in the common accelerant code to be static.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39320 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-06 10:17:41 +00:00
Ingo Weinhold
5609b854b5 Added a Remove() version to which the previous element needs to be passed as
well. This is rather ugly, but it was the quickest way to provide O(1) element
removal. This class could really use some love.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39296 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-04 14:58:10 +00:00
Jérôme Duval
f058886908 * added definitions for SCSI_OP_VERIFY_* op commands
* added support READ_12/16 and WRITE_12/16 in ata and scsi_periph, this enables read/write on block offsets greater than 2TB


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39278 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-02 20:56:20 +00:00
Jérôme Duval
f10a55a632 * ata: added ATADevice::ReadCapacity16()
* ata: don't fail if lba_sector_count is null and lba48_sector_count is not
* scsi_periph: if ReadCapacity() returns 0xffffffff, use ReadCapacity16() instead
* scsi_disk: use a different computation in the struct geometry computation for bigger disks
Tested successfully with a virtual 10TB hard drive.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39252 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-11-01 16:31:09 +00:00
Ithamar R. Adema
f3a3804efa * ARM: Fix ELF relocation name.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39218 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-10-30 22:50:43 +00:00
Ithamar R. Adema
c917cd6261 * ARM: Major VM work
- This is mostly a copy of the x86 32bit paging method and infrastructure, this was copied for two reasons:
		1) It is the most complete VM arch
		2) The first ARM PAE patches have landed on alkml, so we will have to deal with it in the future as well,
		   and this infrastructure has proven to be ready ;)
	- No protection features, or dirty/accessed tracking yet
	- Lots of #if 0

	but....

	It boots all the way up to init_modules() now, and then dies because of a lack of (ARM) ELF relocation implementation!

	Since at this point the VM can be fully initialised, I'm going to focus on CPU exceptions next, so we can get KDL to trigger
	when it happens, and I can actually debug from there ;)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39206 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-10-30 14:10:30 +00:00
Ithamar R. Adema
107ce9b0fb * ARM: Remove fields that were no longer used since r39168...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39205 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-10-30 13:57:32 +00:00
Ingo Weinhold
13b81a3b8e * Added new thread flag THREAD_FLAGS_SINGLE_STEP, which is set to indicate that
userland single-stepping is enabled for the thread.
* x86_exit_user_debug_at_kernel_entry(): Always store DR6 and DR7 in the CPU
  structure, not only when breakpoints are installed.
* x86_handle_debug_exception(): When encountering a syscall single-step, also
  set the THREAD_FLAGS_DEBUG_THREAD thread flag. Otherwise the
  B_THREAD_DEBUG_STOP would be ignored.
* x86 interrupt handling, DISABLE_BREAKPOINTS():
  - Renamed to STOP_USER_DEBUGGING().
  - Now it also call x86_exit_user_debug_at_kernel_entry() when
    THREAD_FLAGS_SINGLE_STEP is set, so that the debug registers are saved.

Fixes #6751.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39201 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-10-30 11:31:01 +00:00