- Various other places in Debugger expect the highpc attribute to be
an address rather than an offset. As such, resolve it to one when
setting the attribute in the corresponding DIE so the resolved value
is available everywhere. Fixes variable scopes not being computed
properly, and consequently the missing variables mentioned in the
previous commit.
This gets things working properly again under gcc4.8.
- For DWARF4, lowpc/highpc can be specified as constants in addition
to addresses. Furthermore, they can also be specified such that highpc
is a relative offset from lowpc rather than an absolute address. We
weren't handling this case, which gcc4.8 is now using when emitting
version 4 debug information. Fixes another part of #10659.
There still remains a problem with regards to class/structure variables not
showing up in the local variables view.
* When the add-on provides no parameter editor, still add the set of
of default controls instead of just bailing out of the Init()
method.
* Before, DriveSetup never added the default controls in such cases
and simply showed an empty window. This happened when e.g. trying
to create a new partition inside an extended partition (because
ExtendedPartitionAddOn provides no parameter editor).
* Fixes #10569
* When determining the output link, look at the internal encoder in
the transmitter setup.
* Fixes getting no picture on digital output of certain systems.
... instead of vertically. This actually swaps horizontal and vertical
so if you have a mouse with a fancy 2-axis scroll ball it will swap
the x and y coordinates. (untested)
... by calling new(std::nothrow)
Also try really hard not to leak any memory in the process.
Lots of error checking added to check if reads and writes fail
returning B_IO_ERROR and if initialization fails returning B_NO_MEMORY
... to prevent throwing a std::bad_alloc exception if there isn't
enough memory to allocate a new BBitmap.
This effectively reverts 116e78d4d4c1f8087a8e70707acc4227c5d0edf7
Thanks Axel and AnEvilYak and sorry for the noise.
* Remove the NULL check since BBitmaps don't return NULL but check
that it IsValid() instead.
* Fill out the *out pointer directly instead of creating a temporary
bitmap pointer.
* Rename err to result.
* Return B_OK unconditionally if we get to the end of the function.
Thanks again Jérôme