Merge remote-tracking branch 'origin/master'
This commit is contained in:
commit
a58ca97941
|
@ -941,6 +941,24 @@ class InternalCommands:
|
|||
print self.find_revision()
|
||||
|
||||
def find_revision(self):
|
||||
return self.getGitRevision()
|
||||
|
||||
def getGitRevision(self):
|
||||
if sys.version_info < (2, 4):
|
||||
raise Exception("Python 2.4 or greater required.")
|
||||
else:
|
||||
p = subprocess.Popen(
|
||||
["git", "log", "--pretty=format:%h", "-n", "1"],
|
||||
stdout=subprocess.PIPE, stderr=subprocess.PIPE)
|
||||
|
||||
stdout, stderr = p.communicate()
|
||||
|
||||
if p.returncode != 0:
|
||||
raise Exception('Could not get revision - git info failed with code: ' + str(p.returncode))
|
||||
|
||||
return stdout
|
||||
|
||||
def find_revision_svn(self):
|
||||
if sys.version_info < (2, 4):
|
||||
stdout = commands.getoutput('svn info')
|
||||
else:
|
||||
|
@ -1174,7 +1192,8 @@ class InternalCommands:
|
|||
shutil.rmtree(exportPath)
|
||||
|
||||
print 'Exporting repository to: ' + exportPath
|
||||
err = os.system('svn export . ' + exportPath)
|
||||
os.mkdir(exportPath)
|
||||
err = os.system('git archive master | tar -x -C ' + exportPath)
|
||||
if err != 0:
|
||||
raise Exception('Repository export failed: ' + str(err))
|
||||
|
||||
|
@ -1403,7 +1422,7 @@ class InternalCommands:
|
|||
def dist_name_rev(self, type):
|
||||
# find the version number (we're puting the rev in after this)
|
||||
pattern = '(.*\d+\.\d+\.\d+)(.*)'
|
||||
replace = '\g<1>-r' + self.find_revision() + '\g<2>'
|
||||
replace = '\g<1>-' + self.find_revision() + '\g<2>'
|
||||
return re.sub(pattern, replace, self.dist_name(type))
|
||||
|
||||
def dist_usage(self):
|
||||
|
|
|
@ -62,6 +62,10 @@ enum {
|
|||
kSynergyMouseScrollAxisY = 'saxy'
|
||||
};
|
||||
|
||||
enum {
|
||||
kCarbonLoopWaitTimeout = 10
|
||||
};
|
||||
|
||||
// TODO: upgrade deprecated function usage in these functions.
|
||||
void setZeroSuppressionInterval();
|
||||
void avoidSupression();
|
||||
|
@ -1693,17 +1697,24 @@ COSXScreen::watchSystemPowerThread(void*)
|
|||
// setting m_pmThreadReady to true otherwise the parent thread will
|
||||
// block waiting for it.
|
||||
if (m_pmRootPort == 0) {
|
||||
LOG((CLOG_WARN "failed to init watchSystemPowerThread"));
|
||||
return;
|
||||
}
|
||||
|
||||
LOG((CLOG_DEBUG "started watchSystemPowerThread"));
|
||||
|
||||
|
||||
LOG((CLOG_DEBUG "waiting for event loop"));
|
||||
m_events->waitForReady();
|
||||
|
||||
#if defined(MAC_OS_X_VERSION_10_7)
|
||||
{
|
||||
CLock lockCarbon(m_carbonLoopMutex);
|
||||
if (*m_carbonLoopReady == false) {
|
||||
|
||||
// we signalling carbon loop ready before starting
|
||||
// unless we know how to do it within the loop
|
||||
LOG((CLOG_DEBUG "signalling carbon loop ready"));
|
||||
|
||||
*m_carbonLoopReady = true;
|
||||
m_carbonLoopReady->signal();
|
||||
}
|
||||
|
@ -1713,6 +1724,7 @@ COSXScreen::watchSystemPowerThread(void*)
|
|||
// start the run loop
|
||||
LOG((CLOG_DEBUG "starting carbon loop"));
|
||||
CFRunLoopRun();
|
||||
LOG((CLOG_DEBUG "carbon loop has stopped"));
|
||||
|
||||
// cleanup
|
||||
if (notificationPortRef) {
|
||||
|
@ -2126,14 +2138,26 @@ void
|
|||
COSXScreen::waitForCarbonLoop() const
|
||||
{
|
||||
#if defined(MAC_OS_X_VERSION_10_7)
|
||||
double timeout = ARCH->time() + 10;
|
||||
if (*m_carbonLoopReady) {
|
||||
LOG((CLOG_DEBUG "carbon loop already ready"));
|
||||
return;
|
||||
}
|
||||
|
||||
CLock lock(m_carbonLoopMutex);
|
||||
|
||||
LOG((CLOG_DEBUG "waiting for carbon loop"));
|
||||
|
||||
double timeout = ARCH->time() + kCarbonLoopWaitTimeout;
|
||||
while (!m_carbonLoopReady->wait()) {
|
||||
if(ARCH->time() > timeout) {
|
||||
throw std::runtime_error("carbon loop is not ready within 5 sec");
|
||||
LOG((CLOG_DEBUG "carbon loop not ready, waiting again"));
|
||||
timeout = ARCH->time() + kCarbonLoopWaitTimeout;
|
||||
}
|
||||
}
|
||||
|
||||
LOG((CLOG_DEBUG "carbon loop ready"));
|
||||
#endif
|
||||
|
||||
}
|
||||
|
||||
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
|
||||
|
|
Loading…
Reference in New Issue