Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 78036c8a authored by Paul Duffin's avatar Paul Duffin Committed by Gerrit Code Review
Browse files

Merge "Prune any empty property sets from the modules before transforming"

parents 2125138f a78f3a73
Loading
Loading
Loading
Loading
+17 −0
Original line number Diff line number Diff line
@@ -241,6 +241,9 @@ func (s *sdk) buildSnapshot(ctx android.ModuleContext) android.OutputPath {
	unversionedTransformer := unversionedTransformation{builder: builder}

	for _, unversioned := range builder.prebuiltOrder {
		// Prune any empty property sets.
		unversioned = unversioned.transform(pruneEmptySetTransformer{})

		// Copy the unversioned module so it can be modified to make it versioned.
		versioned := unversioned.deepCopy()

@@ -389,6 +392,20 @@ func (t unversionedTransformation) transformProperty(name string, value interfac
	}
}

type pruneEmptySetTransformer struct {
	identityTransformation
}

var _ bpTransformer = (*pruneEmptySetTransformer)(nil)

func (t pruneEmptySetTransformer) transformPropertySetAfterContents(name string, propertySet *bpPropertySet, tag android.BpPropertyTag) (*bpPropertySet, android.BpPropertyTag) {
	if len(propertySet.properties) == 0 {
		return nil, nil
	} else {
		return propertySet, tag
	}
}

func generateBpContents(contents *generatedContents, bpFile *bpFile) {
	contents.Printfln("// This is auto-generated. DO NOT EDIT.")
	for _, bpModule := range bpFile.order {