From: <hem...@us...> - 2013-03-06 07:56:29
|
Revision: 7527 http://openhpi.svn.sourceforge.net/openhpi/?rev=7527&view=rev Author: hemanthreddy Date: 2013-03-06 07:56:23 +0000 (Wed, 06 Mar 2013) Log Message: ----------- Fix for issue ID:3425850-hpipower command is misleading the user Modified Paths: -------------- openhpi/trunk/clients/hpipower.c Modified: openhpi/trunk/clients/hpipower.c =================================================================== --- openhpi/trunk/clients/hpipower.c 2013-03-03 05:31:13 UTC (rev 7526) +++ openhpi/trunk/clients/hpipower.c 2013-03-06 07:56:23 UTC (rev 7527) @@ -299,18 +299,36 @@ if (Action <= SAHPI_POWER_CYCLE) { + PowerState = 0; + Status = saHpiResourcePowerStateGet(SessionId, + ComputerPtr->ResID, + &PowerState); + if (Status != SA_OK) + { + printf("%s does not support PowerStateGet",ComputerPtr->NameStr); + } + if (Action == PowerState) + { + printf("\n%s -- %20s is already powered %s\n",argv[0], + ComputerPtr->NameStr, + PowerStateString[Action]); + } + else + { + HPI_POWER_DEBUG_PRINT("Setting a New Power State"); // Set the new power status for this computer Status = saHpiResourcePowerStateSet(SessionId, ComputerPtr->ResID, Action); - /* return status */ - if (Status == SA_OK) - { - printf("\n%s -- %20s has been successfully powered %s\n", - argv[0], - ComputerPtr->NameStr, - PowerStateString[Action]); + /* return status */ + if (Status == SA_OK) + { + printf("\n%s -- %20s has been successfully powered %s\n", + argv[0], + ComputerPtr->NameStr, + PowerStateString[Action]); + } } } else // Report Power status for the system This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |