Merge "ginstall: Also check gfactive for active partition"
diff --git a/ginstall/ginstall.py b/ginstall/ginstall.py
index f061157..1fc0976 100755
--- a/ginstall/ginstall.py
+++ b/ginstall/ginstall.py
@@ -178,6 +178,12 @@
         return 0
       elif partition == 'rootfs1':
         return 1
+    elif arg.startswith('gfactive='):
+      partition = arg.split('=')[1]
+      if partition == 'kernel0':
+        return 0
+      elif partition == 'kernel1':
+        return 1
   return None
 
 
diff --git a/ginstall/ginstall_test.py b/ginstall/ginstall_test.py
index a4e3c8a..07cb294 100755
--- a/ginstall/ginstall_test.py
+++ b/ginstall/ginstall_test.py
@@ -276,6 +276,14 @@
     ginstall.F['PROC_CMDLINE'] = 'testdata/proc/cmdline3'
     self.assertEqual(ginstall.GetBootedPartition(), 1)
 
+    # Test prowl and gfactive
+    ginstall.F['PROC_CMDLINE'] = 'testdata/proc/cmdline4'
+    self.assertEqual(ginstall.GetBootedPartition(), None)
+    ginstall.F['PROC_CMDLINE'] = 'testdata/proc/cmdline5'
+    self.assertEqual(ginstall.GetBootedPartition(), 0)
+    ginstall.F['PROC_CMDLINE'] = 'testdata/proc/cmdline6'
+    self.assertEqual(ginstall.GetBootedPartition(), 1)
+
   def testUloaderSigned(self):
     magic_num = 0xDEADBEEF
     timestamp = 0x5627148C
diff --git a/ginstall/testdata/proc/cmdline4 b/ginstall/testdata/proc/cmdline4
new file mode 100644
index 0000000..ee7e4f6
--- /dev/null
+++ b/ginstall/testdata/proc/cmdline4
@@ -0,0 +1 @@
+debug=1 login=1
diff --git a/ginstall/testdata/proc/cmdline5 b/ginstall/testdata/proc/cmdline5
new file mode 100644
index 0000000..7bed63d
--- /dev/null
+++ b/ginstall/testdata/proc/cmdline5
@@ -0,0 +1 @@
+gfactive=kernel0 debug=1 login=1
diff --git a/ginstall/testdata/proc/cmdline6 b/ginstall/testdata/proc/cmdline6
new file mode 100644
index 0000000..cf6b3cb
--- /dev/null
+++ b/ginstall/testdata/proc/cmdline6
@@ -0,0 +1 @@
+gfactive=kernel1 debug=1 login=1