| Index: base/message_loop.h
|
| ===================================================================
|
| --- base/message_loop.h (revision 6995)
|
| +++ base/message_loop.h (working copy)
|
| @@ -269,8 +269,19 @@
|
| bool operator<(const PendingTask& other) const;
|
| };
|
|
|
| + // TEMP HACK: This is the same as std::less, except it has a data member.
|
| + // This should cause its storage to be initialized, therefore avoiding a
|
| + // UMR in pop(). Experiment for crbug.com/5555.
|
| + template<class T>
|
| + struct LessComparatorHack {
|
| + LessComparatorHack() : junk(42) {}
|
| + bool operator()(const T& a, const T& b) const { return a < b; }
|
| + int junk;
|
| + };
|
| +
|
| typedef std::queue<PendingTask> TaskQueue;
|
| - typedef std::priority_queue<PendingTask> DelayedTaskQueue;
|
| + typedef std::priority_queue<PendingTask, std::vector<PendingTask>,
|
| + LessComparatorHack<PendingTask> > DelayedTaskQueue;
|
|
|
| #if defined(OS_WIN)
|
| base::MessagePumpWin* pump_win() {
|
|
|