Closed Bug 1338096 Opened 3 years ago Closed 3 years ago

[e10s] Http Channel Priority doesn't pass the correct numeric value over IPDL

Categories

(Core :: Networking: HTTP, defect)

defect
Not set

Tracking

()

RESOLVED FIXED
mozilla54
Tracking Status
firefox54 --- fixed

People

(Reporter: schien, Assigned: schien)

References

Details

(Whiteboard: [necko-active])

Attachments

(1 file)

The value of priority is stored in `int16_t`. In PHttpChannel.ipdl and NeckoChannelParams.ipdlh we use `uint16_t` as the data type to pass it over IPC. However the value is used as a parameter of `int32_t` directly, which cause all the negative value being converted to some value larger than 32768.

The solution is to use int16_t in IPDL instead of uint16_t.
Whiteboard: [necko-active]
Comment on attachment 8835442 [details]
Bug 1338096 - correct the data type used in PHttpChannel.SetPriority().

https://reviewboard.mozilla.org/r/111186/#review112482

thanks, good catch!

::: netwerk/protocol/http/HttpChannelParent.cpp:628
(Diff revision 1)
>  }
>  
>  mozilla::ipc::IPCResult
> -HttpChannelParent::RecvSetPriority(const uint16_t& priority)
> +HttpChannelParent::RecvSetPriority(const int16_t& priority)
>  {
>    LOG(("HttpChannelParent::RecvSetPriority [this=%p, priority=%u]\n",

priority=%d in the log
Attachment #8835442 - Flags: review?(honzab.moz) → review+
Comment on attachment 8835442 [details]
Bug 1338096 - correct the data type used in PHttpChannel.SetPriority().

https://reviewboard.mozilla.org/r/111186/#review112482

> priority=%d in the log

fixed in next revision
Test case is provided along with bug 1337721.
Pushed by schien@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/ae2a6bd17689
correct the data type used in PHttpChannel.SetPriority(). r=mayhemer
https://hg.mozilla.org/mozilla-central/rev/ae2a6bd17689
Status: NEW → RESOLVED
Closed: 3 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla54
You need to log in before you can comment on or make changes to this bug.