makes it abort earlier when no firmware files are available. Note that this
worked some time ago and seems to be an edge case triggering an issue in the
slab allocator. Freeing the buffer (possibly allocated with an invalid size)
in the error case triggered the assert in #6679. That should probably be looked
at, but meanwhile this should close#6679.
Note also that looking for firmware is deliberatly done only at open() time,
since the configured operational mode determines the firmware to be used and
having the firmware loaded later makes the mode easily changeable at runtime.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41144 a95241bf-73f2-0310-859d-f6bbb57e9c96
ALPS movements are fine now, hope the synaptics is still working. Please test! There are still some leftovers form switching from a c struct to a c++
class will fix that later.
- Support ALPS devices with passthrough.
- ALPS is still disabled because tap and edge motion is not working yet. The
problem is that synaptics generates more helper events which makes this a lot
easier to implement. My plan is to emulate this events to imitate the synatics touchpad.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41140 a95241bf-73f2-0310-859d-f6bbb57e9c96
more or less a copy of the synaptics driver. Next step is to refactor the movement generation and share the
code with the synaptics driver.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41124 a95241bf-73f2-0310-859d-f6bbb57e9c96
* ntfs log handler wasn't included for Haiku, it should be used to set up a log handler.
* style fix
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41081 a95241bf-73f2-0310-859d-f6bbb57e9c96
marked as read by another client the haiku client at least updates the flags and mark it as read when fetching the body. Thats the way Opera is
doing it.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41018 a95241bf-73f2-0310-859d-f6bbb57e9c96
product id. Currently the list only has an example entry.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41017 a95241bf-73f2-0310-859d-f6bbb57e9c96
The complete window need some love so do not complain at this stage, feel free to fix it, though :-) (Main problem is to add a cancel button to abort the folder fetch and show an error message, see #7258).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40978 a95241bf-73f2-0310-859d-f6bbb57e9c96
there is no need to do the usage page and usage id handling anymore.
* As this also removes the only use of the global state it is removed as well.
* Try the usage maximum as a fallback as well and print something if none of the
usage sources are valid and the collection ends up without a proper usage.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40954 a95241bf-73f2-0310-859d-f6bbb57e9c96
the conversion, it makes it easier to do it for all items the same. This fixes
the missing initialization of the usage stack as pointed out by caz_haiku in
#7354, thanks for the pointer!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40953 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Move the main data declaration to where it's used.
* Tiny cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40952 a95241bf-73f2-0310-859d-f6bbb57e9c96
There is one thread (BLooper) to handle new commands and one watcher thread which is just listening at the server port for updates. The race condition occurred for example when a sync/watching and a fetch body message are send to the looper. The sync message just triggered the IDLE command in the watcher thread. In the meantime the fetch body command send a DONE command, because the IDLE command has not be send at this time the watcher keeps watching.
- fix int32 -> ssize_t thanks Axel and Stippi
- clean up
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40919 a95241bf-73f2-0310-859d-f6bbb57e9c96
* 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
I remember there was a ticket about the localization problem in one of
this components. I'll look for it tomorrow and close them all. If I'll find them.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40734 a95241bf-73f2-0310-859d-f6bbb57e9c96
the B_TRANSLATE_WITH_COMMENT macro are misinterpreted by our
localization routines. I fix this one, because it provocate
permanent fingerprint check failure during catkeys link procedure.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40723 a95241bf-73f2-0310-859d-f6bbb57e9c96
virtual but only static methods, it is not so likely that binary compatibility issues may arrise
from using it in new apps. Adjusted all the Jamfiles that included the private libicon headers. Note
that it was never necessary to link against libicon.a, since it's part of libbe anyway. There was one
instance where that was done. Hopefully it does not break the build, but I did this change a while ago,
tested it and then the harddrive began failing.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40679 a95241bf-73f2-0310-859d-f6bbb57e9c96
- Set watching variable when leaving the watching method.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40635 a95241bf-73f2-0310-859d-f6bbb57e9c96
iconsintently.
Respect the 80 columns limit, update copyright, used calloc instead of
malloc.
No functional changes (hopefully)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40597 a95241bf-73f2-0310-859d-f6bbb57e9c96
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
variables to make the function a bit clearer, hopefully.
* Fixed the wrong order of releasing the reference, and removing the object
from the hash table -- thanks Rene!
* Added a bit of documentation to InterfaceAddress::Prepare().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40455 a95241bf-73f2-0310-859d-f6bbb57e9c96
This fixes random memory access on interface removal.
* Optimized IndexOfAddress() for NULL addresses.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40447 a95241bf-73f2-0310-859d-f6bbb57e9c96
have duplicates there, it should certainly not panic.
* Do not add unspecified addresses to the hash table.
* The result of adding the initial address of an interface was ignored; now, the
interface is correctly destructed, if necessary.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40444 a95241bf-73f2-0310-859d-f6bbb57e9c96
* clean up
* directories don't seem to have a valid contiguous flag, fixes directories with many files.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40431 a95241bf-73f2-0310-859d-f6bbb57e9c96
* 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
Also the read flags are synced with the server. This makes it easy to have the same mailbox state on different machines.
Messages could be deleted by delete them form the folder (not when moving them to trash) This maybe needs some more thoughts but its a save solution. One problem with moving it to trash is that you also want to have the option to restore it again. If it is a header only messages and you delete it from the server you lose the body part. Complete messages could theoretically be append to the mailbox again when restoring the mail form trash. Append is commented out though...
An solution for the delete problem would be to move the message to a trash folder on the server. Moving mails on the server is not implemented yet, though.
You can subscribe or unsubscribe to a mailbox using the imap pref panel. The settings are written to the server and are not stored locally.
Add some helper classes which could also be used for POP and SMTP:
ServerConnection: abstract ssl or socket connection
ConnectionReader (still a bit IMAP specific but could be easily separated IMHO): read complete lines or a bunch of data more efficient. Old implementation did it byte by byte, this class read data in bunches and buffer the left over for the next request...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40399 a95241bf-73f2-0310-859d-f6bbb57e9c96
Remove button in the pref app removes the complete account because we don't have separate chains any more. The pref app stays a mess, needs some layout love! (I did it even look worse...)
The new account/mail settings classes know if they have been changed but the current pref panel does not use this feature very well. It always mark the settings as modified when the settings view is displayed or more precise when the settings view is detached from the pref window, this could be optimized. The according mail protocol is completely restarted when their settings changed.
Some system filters are now directly integrated in the mail protocols. Hopefully make things easier to understand.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40398 a95241bf-73f2-0310-859d-f6bbb57e9c96
#7135#7140#7141#7145#7186#7188#7191#7136#7187#7184#7185#7192#7138#7139
with some changes and exclusions:
- all attempts to localize "fprintf(stderr,..." and "printf(..."
replaced by _untranslated_ "syslog(LOG_ERR ...";
- following *Translator.rdef files, that were not added in mentioned patches
were additionally created:
SGI, TIFF, RAW, RTF, PPM, WebP, EXR, STXT, WonderBrush, GIF, TGA;
- some small fixes for consistent catalogs building.
Thank you, Jorma! Please check. ;-)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40357 a95241bf-73f2-0310-859d-f6bbb57e9c96
* 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
2) Functionality of the handling the rate for AC97 Front PCM DAC added.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40327 a95241bf-73f2-0310-859d-f6bbb57e9c96
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
- Based on GPL code in linux kernel staging
- Low level communications mostly done
- Probes GPIO pins and detects LEDs
- Sets device up and pushes firmware
- Detects MAC address
- blinks LED through a spawned thread based on driver state
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40302 a95241bf-73f2-0310-859d-f6bbb57e9c96
* 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
* Inline extent data isn't read with the file_cache yet as the data is not block aligned.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40282 a95241bf-73f2-0310-859d-f6bbb57e9c96
was rewritten to Haiku MultiAudio API.
This changeset replaces both old version of the same driver written for
BeOS R3 Sound API and ali5451 driver that handles the same audio hardware.
The driver was tested with SiS 7018 and ALi M5451 cards. Trident DX/NX
support still should be tested.
Some parts, related to ALi M5451 support were inspired by original ali5451
code so the copyright (c) 2009 by Krzysztof Äwiertnia was added in the source.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40273 a95241bf-73f2-0310-859d-f6bbb57e9c96
Both JPEGTranslator and JPEG200Translator were "exporting" gSettings symbol,
which when loaded within a app (like Paladin) exporting the same global symbol
was leading to a symbol resolution error. See #7114 for details.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40245 a95241bf-73f2-0310-859d-f6bbb57e9c96
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
drivers in the future, such that NetworkStatus and similar software can show
nice names for the devices. The device manager should implement this and
return the B_DEVICE_PRETTY_NAME of the device (and in turn, new style drivers
should actually set this).
* Implemented handling of this ioctl in the scsi_periph to return the vendor/
product strings.
* Implemented this in the ATA bus manager to return the model from the info
block.
* KDiskDevice now fills in the partition_data::name if the B_GET_DEVICE_NAME
succeeds.
* As a side effect, at least BootManager now shows the drive name; maybe
DriveSetup does as well for the raw device.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40231 a95241bf-73f2-0310-859d-f6bbb57e9c96
* inject modification time of package folder into root folder of
package-fs
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40230 a95241bf-73f2-0310-859d-f6bbb57e9c96
the mount parameters
* packagefs_read_stat(): put some sane value into st_blocks
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40227 a95241bf-73f2-0310-859d-f6bbb57e9c96
mount parameters - there doesn't seem to be a way for a filesystem
to access the path to which it was mounted, is there?
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40225 a95241bf-73f2-0310-859d-f6bbb57e9c96
order to be able to mount packages from somewhere else than
'/boot/common/packages' (squashes a TODO)
* squashed another TODO about needing to remove nodes of already
installed packages if anything goes wrong during the activation
of a package domain
* fix what to me looks like a bug in Volume::AddPackageDomainJob::Do(),
fDomain is accessed unconditionally in the destructor, so NULLing
it here is bad (it doesn't make sense from a reference-passing POV
either). The problem never showed as this code is never being executed
currently (no way to add additional package domains as of yet)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40214 a95241bf-73f2-0310-859d-f6bbb57e9c96
* 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
This bug only happens for bitmaps with unusual lengths (often the last blockgroup block bitmap) and which happen to be full.
Should fix#7074.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40175 a95241bf-73f2-0310-859d-f6bbb57e9c96
* BitmapBlock::FindMarked/FindUnmarked() tried to find a free bit
at the end of a full bitmap. This fixes#7069.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40143 a95241bf-73f2-0310-859d-f6bbb57e9c96
* I reused crc_table.cpp from the UDF filesystem and switched it to have the reversed algorithm,
then generated the table in CRCTable.cpp
* added a binary search for extent tree leaves.
* fixed a check in InodeAllocator::New().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40129 a95241bf-73f2-0310-859d-f6bbb57e9c96
specifier to float constants. Hopefully I'm done with this now.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40110 a95241bf-73f2-0310-859d-f6bbb57e9c96
Butterfly by Geoffry Song.
Leaves by Deyan Genovski and Geoffry Song.
Thanks guys!
I fixed a few coding violations and wrote the Jamfiles.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40098 a95241bf-73f2-0310-859d-f6bbb57e9c96
Expanded search in every configuration, not only first. ELSA USB modem for instance
publish two configurations, the first one being a vendor-specific one for
Windows NT.
ACMDevice now don't assume anymore union functional descriptor is always there.
The data interface index can be found also in Call Management (CM) functional
descriptor.
(Style cleanup pending...)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40092 a95241bf-73f2-0310-859d-f6bbb57e9c96
When in nondirect mode, SwapBuffers() wasn't respecting the vsync parameter.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40051 a95241bf-73f2-0310-859d-f6bbb57e9c96
code is not used; maybe it was not implemented completly
or BePDF could not render it correctly.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39996 a95241bf-73f2-0310-859d-f6bbb57e9c96
Postfix/prefix increment evaluation order is not changed by parantheses. Use '+ 1' for readability instead. CID 2982.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39966 a95241bf-73f2-0310-859d-f6bbb57e9c96
Afaict it looks like it results in unbalanced Acquire calls on the parent. CID 10393.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39964 a95241bf-73f2-0310-859d-f6bbb57e9c96
A bit confused about the signedness handling in ring_buffer internals though, int32 to size_t.
Unnested the acpi_namespace_read function a bit and removed dead check for negative lengths from read. CID 4093.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39963 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Use strlcpy() instead of memcpy() to ensure that the dirent is properly
terminated.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39954 a95241bf-73f2-0310-859d-f6bbb57e9c96
bytes were initialized to 0 due to wrong use of sizeof().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39953 a95241bf-73f2-0310-859d-f6bbb57e9c96
actually hit this limit.
* Use snprintf() instead of sprintf() as suggested by CID 6447 (even though the
USB module isn't supposed to return such a malformed string).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39908 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Check the length of the incoming buffer before accessing it through the union.
It's necessary to do this dependent on the operation at hand, since the caller
doesn't need to provide the full union size and the size may differ between
(still compatible) protocol versions.
* Replace memcpy() by user_memcpy() where data is exchanged with userland.
* Small style cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39907 a95241bf-73f2-0310-859d-f6bbb57e9c96
variable. Didn't matter, as the parameter is only accessed through the
usb_raw_command variable that it is casted to early in the function. CID 5219.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39906 a95241bf-73f2-0310-859d-f6bbb57e9c96
crash trying to delete the not created allocator. CID 9562.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39905 a95241bf-73f2-0310-859d-f6bbb57e9c96
Coverity was intentional (as explained by the comment). That the fInterval
member was somehow totally forgotten though, wasn't. This should only affect
EHCI and OHCI as they take the interval into account. Might fix some strange
behaviour, but most likely won't, as the interval range is rather narrow and
shouldn't be too noticeable if set incorrectly. CID 9558.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39904 a95241bf-73f2-0310-859d-f6bbb57e9c96
* validate fBlockShift in superblock.
* Volume::AllocateBlocks() now uses an absolute fsblock instead of a blockgroup related fsblock.
* AllocationBlockGroup now provides absolute fsblock values.
* added support for extents feature: ExtentStream class is the equivalent for DataStream class for extent operations.
The extent tree implementation is very basic, should work for normal growing/shrinking
operations, but not for sparse files. When enlarging a file and extent tree is full,
the root is moved in a new block and a new level is added on top. Extents can usually
be extended when adjacent blocks are allocated. Shrinking happens by removing leafs
one after another.
* removed empty IndexedDirectoryIterator.*
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39886 a95241bf-73f2-0310-859d-f6bbb57e9c96
Something appeards to be very wrong with codec registration.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39885 a95241bf-73f2-0310-859d-f6bbb57e9c96
* A lot of HID definitions got extracted from USB_hid.h into their
own files. Many more definitions have been added from the specs.
* The names have been moved into the proper B_* namspace.
* The USB hid driver has been adapted for the changes.
Thanks a lot and sorry for the delay!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@39874 a95241bf-73f2-0310-859d-f6bbb57e9c96