Use strict mode when url-decoding file requests.
We don't want '+' to become a space here. Fixes #11109.
This commit is contained in:
@@ -483,11 +483,15 @@ rule ArchitectureSetupWarnings architecture
|
||||
EnableWerror src add-ons kernel bus_managers ata ;
|
||||
EnableWerror src add-ons kernel bus_managers config_manager ;
|
||||
# EnableWerror src add-ons kernel bus_managers firewire ;
|
||||
# EnableWerror src add-ons kernel bus_managers ide ;
|
||||
EnableWerror src add-ons kernel bus_managers isa ;
|
||||
EnableWerror src add-ons kernel bus_managers pci ;
|
||||
# EnableWerror src add-ons kernel bus_managers ps2 ; # gcc2
|
||||
# EnableWerror src add-ons kernel bus_managers random ;
|
||||
EnableWerror src add-ons kernel bus_managers scsi ;
|
||||
# EnableWerror src add-ons kernel bus_managers tty ;
|
||||
EnableWerror src add-ons kernel bus_managers usb ;
|
||||
# EnableWerror src add-ons kernel bus_managers virtio ;
|
||||
EnableWerror src add-ons kernel busses agp_gart ;
|
||||
EnableWerror src add-ons kernel busses ata ;
|
||||
EnableWerror src add-ons kernel busses scsi ;
|
||||
|
||||
@@ -12,10 +12,8 @@
|
||||
|
||||
namespace icu {
|
||||
class Collator;
|
||||
class RuleBasedCollator;
|
||||
};
|
||||
|
||||
|
||||
class BString;
|
||||
class BCollatorAddOn;
|
||||
|
||||
|
||||
@@ -44,7 +44,7 @@ public:
|
||||
void AdoptPostFields(BHttpForm* const fields);
|
||||
void AdoptInputData(BDataIO* const data,
|
||||
const ssize_t size = -1);
|
||||
void AdoptHeaders(BHttpHeaders* const headers);
|
||||
void AdoptHeaders(BHttpHeaders* const headers);
|
||||
|
||||
status_t Stop();
|
||||
const BUrlResult& Result() const;
|
||||
|
||||
@@ -170,9 +170,9 @@ typedef struct driver_cookie
|
||||
|
||||
_EXPORT int32 api_version = B_CUR_DRIVER_API_VERSION;
|
||||
|
||||
const char* usb_midi_driver_name = "usb_midi";
|
||||
static const char* usb_midi_driver_name = "usb_midi";
|
||||
|
||||
const int CINbytes[] = { /* See USB-MIDI Spec */
|
||||
static const int CINbytes[] = { /* See USB-MIDI Spec */
|
||||
0, /* 0x0 -- undefined Misc -- Reserved */
|
||||
0, /* 0x1 -- undefined Cable -- Reserved */
|
||||
2, /* 0x2 -- 2-byte system common */
|
||||
@@ -199,14 +199,16 @@ interpret_midi_buffer(usbmidi_device_info* midiDevice)
|
||||
{
|
||||
usb_midi_event_packet* packet = midiDevice->buffer;
|
||||
size_t bytes_left = midiDevice->actual_length;
|
||||
while (bytes_left) { /* buffer may have several packets */
|
||||
int pktlen = CINbytes[packet->cin];
|
||||
usbmidi_port_info* port = midiDevice->ports[packet->cn];
|
||||
|
||||
/* buffer may have several packets */
|
||||
while (bytes_left >= sizeof(usb_midi_event_packet)) {
|
||||
DPRINTF_DEBUG((MY_ID "received packet %x:%d %x %x %x\n",
|
||||
packet->cin, packet->cn,
|
||||
packet->midi[0], packet->midi[1], packet->midi[2]));
|
||||
|
||||
int pktlen = CINbytes[packet->cin];
|
||||
usbmidi_port_info* port = midiDevice->ports[packet->cn];
|
||||
|
||||
/* port matching 'cable number' */
|
||||
if (port == NULL) {
|
||||
DPRINTF_ERR((MY_ID "no port matching cable number %d!\n",
|
||||
|
||||
@@ -10,6 +10,7 @@
|
||||
|
||||
#include <Entry.h>
|
||||
#include <File.h>
|
||||
#include <Font.h>
|
||||
#include <Layout.h>
|
||||
#include <ScrollBar.h>
|
||||
|
||||
@@ -87,8 +88,8 @@ TermView::Draw(BRect updateRect)
|
||||
background.blue = cell.bg.blue;
|
||||
background.alpha = 255;
|
||||
|
||||
if ((cell.attrs.reverse != 0) ^ (pos.col == cursorPos.col
|
||||
&& pos.row == cursorPos.row)) {
|
||||
// Draw the cursor by swapping foreground and background colors
|
||||
if ((pos.col == cursorPos.col && pos.row == cursorPos.row)) {
|
||||
SetLowColor(foreground);
|
||||
SetViewColor(foreground);
|
||||
SetHighColor(background);
|
||||
@@ -103,10 +104,28 @@ TermView::Draw(BRect updateRect)
|
||||
y + ceil(height.descent) + ceil(height.leading)),
|
||||
B_SOLID_LOW);
|
||||
|
||||
BFont font = be_fixed_font;
|
||||
if (cell.attrs.bold)
|
||||
font.SetFace(B_BOLD_FACE);
|
||||
if (cell.attrs.underline)
|
||||
font.SetFace(B_UNDERSCORE_FACE);
|
||||
if (cell.attrs.italic)
|
||||
font.SetFace(B_ITALIC_FACE);
|
||||
if (cell.attrs.blink) // FIXME make it actually blink
|
||||
font.SetFace(B_OUTLINED_FACE);
|
||||
if (cell.attrs.reverse)
|
||||
font.SetFace(B_NEGATIVE_FACE);
|
||||
if (cell.attrs.strike)
|
||||
font.SetFace(B_STRIKEOUT_FACE);
|
||||
|
||||
// TODO handle "font" (alternate fonts), dwl and dhl (double size)
|
||||
|
||||
SetFont(&font);
|
||||
|
||||
if (cell.chars[0] == 0) {
|
||||
x += fFontWidth;
|
||||
MovePenTo(x, y);
|
||||
DrawString(" ");
|
||||
pos.col ++;
|
||||
x += fFontWidth;
|
||||
} else {
|
||||
char buffer[VTERM_MAX_CHARS_PER_CELL];
|
||||
wcstombs(buffer, (wchar_t*)cell.chars,
|
||||
|
||||
@@ -6,7 +6,7 @@ resource(1, "META:TYPE") "text/html";
|
||||
resource(2, "META:SNIFF_RULE") #'CSTR' array {
|
||||
"0.40 [0:512]( -i \"<HTML\" | \"<HEAD\" | \"<TITLE\" | \"<BODY\" | "
|
||||
"\"<TABLE\" | \"<META\" | \"<CENTER\" | \"<!DOCTYPE HTML\" | \"<SCRIPT\" | "
|
||||
"\"<STYLE\" | \"<A HREF\" )"
|
||||
"\"<STYLE\" | \"<A HREF\" | \"<BR/>\" )"
|
||||
};
|
||||
|
||||
resource(3, "META:S:DESC") #'MSDC' "HTML file";
|
||||
|
||||
@@ -23,7 +23,7 @@ BFileRequest::BFileRequest(const BUrl& url, BUrlProtocolListener* listener,
|
||||
BUrlRequest(url, listener, context, "BUrlProtocol.File", "file"),
|
||||
fResult()
|
||||
{
|
||||
fUrl.UrlDecode();
|
||||
fUrl.UrlDecode(true);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -19,8 +19,10 @@
|
||||
#include <HttpTime.h>
|
||||
#include <NetworkCookie.h>
|
||||
|
||||
|
||||
using BPrivate::BHttpTime;
|
||||
|
||||
|
||||
static const char* kArchivedCookieName = "be:cookie.name";
|
||||
static const char* kArchivedCookieValue = "be:cookie.value";
|
||||
static const char* kArchivedCookieDomain = "be:cookie.domain";
|
||||
@@ -159,7 +161,7 @@ BNetworkCookie::ParseCookieString(const BString& string, const BUrl& url)
|
||||
long maxAge = strtol(value.String(), &end, 10);
|
||||
if (*end == '\0')
|
||||
SetMaxAge((int)maxAge);
|
||||
else if(errno == ERANGE && maxAge == LONG_MAX)
|
||||
else if (errno == ERANGE && maxAge == LONG_MAX)
|
||||
SetMaxAge(INT_MAX);
|
||||
else
|
||||
SetMaxAge(-1); // cookie will expire immediately
|
||||
|
||||
@@ -26,8 +26,7 @@ BUrlProtocolAsynchronousListener::BUrlProtocolAsynchronousListener(
|
||||
if (be_app->Lock()) {
|
||||
be_app->AddHandler(this);
|
||||
be_app->Unlock();
|
||||
}
|
||||
else
|
||||
} else
|
||||
PRINT(("Cannot lock be_app\n"));
|
||||
|
||||
if (transparent) {
|
||||
|
||||
@@ -316,7 +316,7 @@ public:
|
||||
}
|
||||
|
||||
private:
|
||||
const Transformable& fTransform;
|
||||
const Transformable& fTransform;
|
||||
const BPoint& fTransformOffset;
|
||||
const IntRect& fClippingFrame;
|
||||
bool fDryRun;
|
||||
|
||||
Reference in New Issue
Block a user