git.cweiske.de
/
enigma2.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
don't crash when having unknown fec/pol values (possibly due to broken satellites...
[enigma2.git]
/
lib
/
base
/
ebase.h
diff --git
a/lib/base/ebase.h
b/lib/base/ebase.h
index f14d07accdbdae7ebcff45d753fcbcfe01332287..bab1b5f372aa71a0771595590853763a69cba646 100644
(file)
--- a/
lib/base/ebase.h
+++ b/
lib/base/ebase.h
@@
-191,6
+191,7
@@
class eMainloop
int processOneEvent(unsigned int user_timeout, PyObject **res=0, ePyObject additional=ePyObject());
int retval;
int time_offset;
int processOneEvent(unsigned int user_timeout, PyObject **res=0, ePyObject additional=ePyObject());
int retval;
int time_offset;
+ int m_is_idle;
pthread_mutex_t recalcLock;
int m_interrupt_requested;
pthread_mutex_t recalcLock;
int m_interrupt_requested;
@@
-211,16
+212,19
@@
public:
#endif
eMainloop()
#endif
eMainloop()
- :app_quit_now(0),loop_level(0),retval(0), m_interrupt_requested(0)
+ :app_quit_now(0),loop_level(0),retval(0), m_i
s_idle(0), m_i
nterrupt_requested(0)
{
existing_loops.push_back(this);
pthread_mutex_init(&recalcLock, 0);
}
{
existing_loops.push_back(this);
pthread_mutex_init(&recalcLock, 0);
}
- ~eMainloop()
+
virtual
~eMainloop()
{
existing_loops.remove(this);
pthread_mutex_destroy(&recalcLock);
{
existing_loops.remove(this);
pthread_mutex_destroy(&recalcLock);
+ for (std::map<int, eSocketNotifier*>::iterator it(notifiers.begin());it != notifiers.end();++it)
+ it->second->stop();
}
}
+
int looplevel() { return loop_level; }
#ifndef SWIG
int looplevel() { return loop_level; }
#ifndef SWIG
@@
-242,6
+246,9
@@
public:
PyObject *poll(SWIG_PYOBJECT(ePyObject) dict, SWIG_PYOBJECT(ePyObject) timeout);
void interruptPoll();
void reset();
PyObject *poll(SWIG_PYOBJECT(ePyObject) dict, SWIG_PYOBJECT(ePyObject) timeout);
void interruptPoll();
void reset();
+
+ /* m_is_idle needs to be atomic, but it doesn't really matter much, as it's read-only from outside */
+ int isIdle() { return m_is_idle; }
};
/**
};
/**