fixed 2:12.0~git20130127.fb595f2-1
thanks

Hi Oskar,

On 09/23/2012 07:13 PM, Oskar Liljeblad wrote:
> Package: xbmc
> Version: 2:11.0~git20120510.82388d5
> Severity: normal
> 
> Hello
> 
> Thanks for packaging XBMC for Debian, and especially for keeping it up to
> date.  Reboot, shutdown and restart operations terminate XBMC, but nothing
> beyond that.  Looking at the source code it seems you have look at the exit
> code.  In xbmc-11.0~git20120510.82388d5/xbmc/XBApplicationEx.h:
> 
>  // Do not change the numbering, external scripts depend on them
>  enum {
>    EXITCODE_QUIT      = 0,
>    EXITCODE_POWERDOWN = 64,
>    EXITCODE_RESTARTAPP= 65,
>    EXITCODE_REBOOT    = 66,
>  };
> 
> Then I look at /usr/bin/xbmc and return code 65 seems to be handled there,
> but it still doesn't restart XBMC.
The reboot/shutdown of the system is implemented inside XBMC binary, the
exit code does not need to be handled by the xbmc script:
From ApplicationMessenger.cpp:
    case TMSG_POWERDOWN:
      {
        g_application.Stop(EXITCODE_POWERDOWN);
        g_powerManager.Powerdown();
      }
      break;
...

There are several implementation of Powerdown() the applicable one for
your system will be used (listed by cscope):
Global definition: Powerdown

  File                             Line
0 ApplicationMessenger.cpp         1068 void
CApplicationMessenger::Powerdown()
1 PowerManager.cpp                  142 bool CPowerManager::Powerdown()
2 PowerManager.h                     29 virtual bool Powerdown() {
return false; }
3 AndroidPowerSyscall.h              31 virtual bool Powerdown(void ) {
return false; }
4 ConsoleDeviceKitPowerSyscall.cpp   36 bool
CConsoleDeviceKitPowerSyscall::Powerdown()
5 ConsoleUPowerSyscall.cpp           33 bool
CConsoleUPowerSyscall::Powerdown()
6 HALPowerSyscall.cpp                37 bool CHALPowerSyscall::Powerdown()
7 SystemdUPowerSyscall.cpp           42 bool
CSystemdUPowerSyscall::Powerdown()
8 UPowerSyscall.cpp                 108 bool CUPowerSyscall::Powerdown()
9 CocoaPowerSyscall.cpp              97 bool
CCocoaPowerSyscall::Powerdown(void )
a Win32PowerSyscall.cpp              33 bool CWin32PowerSyscall::Powerdown()

Please test latest version in unstable, it should at least log the
following line to ~/.xbmc/temp/xbmc.log:
21:19:58 T:3002840896   ERROR: DBus: Error
org.freedesktop.ConsoleKit.Manager.NotPrivileged - Authorization is required

, if your user is not allowed to shut down the system this way.

You can reconfigure your system based on the suggestion at upstream's
forums:
http://forum.xbmc.org/showthread.php?tid=155182

Cheers,
Balint

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to