]> code.ossystems Code Review - openembedded-core.git/commitdiff
direct.py: fix getting image name
authorEd Bartosh <ed.bartosh@linux.intel.com>
Tue, 10 Jan 2017 17:46:08 +0000 (19:46 +0200)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Mon, 16 Jan 2017 18:01:55 +0000 (18:01 +0000)
part.rootfs_dir was used as an image name in the code.
However, when multi-rootfs feature is used this attribute
points to the name of the rootfs, e.g. if --rootfs command line
is rootfs1=core-image-minimal partf.rootfs_dir is 'rootfs1'.

The code also fails when image name is not provided in wic
commandline. For example, when wic is called with
--rootfs-dir=<path> part.rootfs_dir will contain path and
wic will crash trying to call bitbake -e <path> to get
value of ROOTFS_SIZE variable.

Fixed the code by getting image name properly and checking
if it's not a path.

[YOCTO #10815]

Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
scripts/lib/wic/imager/direct.py

index 11ec15e33f65885618c7adc83e55c6a39fedbe99..52828c10cd544d8d9733540a7da1834a4284c9c4 100644 (file)
@@ -270,8 +270,8 @@ class DirectImageCreator(BaseImageCreator):
             # get rootfs size from bitbake variable if it's not set in .ks file
             if not part.size:
                 # and if rootfs name is specified for the partition
-                image_name = part.rootfs_dir
-                if image_name:
+                image_name = self.rootfs_dir.get(part.rootfs_dir)
+                if image_name and os.path.sep not in image_name:
                     # Bitbake variable ROOTFS_SIZE is calculated in
                     # Image._get_rootfs_size method from meta/lib/oe/image.py
                     # using IMAGE_ROOTFS_SIZE, IMAGE_ROOTFS_ALIGNMENT,