Chromium Code Reviews| Index: remoting/protocol/session.h |
| diff --git a/remoting/protocol/session.h b/remoting/protocol/session.h |
| index 27558d7b8da2d5e5496dcc42fd35efbc9d00df8d..86b13b47f7e9b20ce3d9e9dc6e26729dbae74128 100644 |
| --- a/remoting/protocol/session.h |
| +++ b/remoting/protocol/session.h |
| @@ -25,6 +25,11 @@ namespace protocol { |
| // Generic interface for Chromotocol connection used by both client and host. |
| // Provides access to the connection channels, but doesn't depend on the |
| // protocol used for each channel. |
| +// |
| +// Because libjingle's sigslot class doesn't handle deletion properly |
| +// while it is being invoked all Session instances must be deleted |
| +// with clean stack, i.e. not from event handlers, when sigslot may be |
|
Wez
2011/11/09 02:32:22
nit: with _a_ clean stack.
Sergey Ulanov
2011/11/09 21:24:00
Done.
|
| +// present in the stack. |
| class Session : public base::NonThreadSafe { |
| public: |
| enum State { |
| @@ -120,8 +125,7 @@ class Session : public base::NonThreadSafe { |
| virtual const std::string& shared_secret() = 0; |
| // Closes connection. Callbacks are guaranteed not to be called |
| - // after this method returns. Must be called before the object is |
| - // destroyed, unless the state is set to FAILED or CLOSED. |
| + // after this method is called. |
|
Wez
2011/11/09 02:32:22
nit: after this method returns?
Sergey Ulanov
2011/11/09 21:24:00
No - callback is not expected during this call. Pr
Wez
2011/11/09 23:18:45
OK, I think it's clearer to say "from the moment t
Sergey Ulanov
2011/11/10 21:06:14
Reverted behavior of this method and this comment.
|
| virtual void Close() = 0; |
| private: |