Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Woo POS] A crash when preparing order with variable products with no price #14958

Closed
staskus opened this issue Jan 23, 2025 · 3 comments
Closed
Labels
feature: POS type: crash The worst kind of bug.

Comments

@staskus
Copy link
Contributor

staskus commented Jan 23, 2025

Reproducible on feat/14834-replace-local-filtering branch, context: pdfdoF-6fr-p2

  1. Add a product with no price
  2. Check out
  3. Connect to reader
  4. Observe "Price too low" error
  5. Come back
  6. Check out again
    Crash
A.crash.MP4
@dangermattic
Copy link
Collaborator

dangermattic commented Jan 23, 2025

Thanks for reporting! 👍

@staskus staskus added type: bug A confirmed bug. type: crash The worst kind of bug. feature: POS and removed type: bug A confirmed bug. labels Jan 23, 2025
@staskus
Copy link
Contributor Author

staskus commented Jan 23, 2025

#0	0x00000001938a3b6c in _PFAssertSafeMultiThreadedAccess_impl ()
#1	0x00000001938a38b4 in _pvfk_header ()
#2	0x00000001938a36c0 in _sharedIMPL_pvfk_core_q ()
#3	0x00000001069cf088 in SiteSetting.toReadOnly() at /Users/povilasstaskus/Projects/woocommerce-ios/Yosemite/Yosemite/Model/Storage/SiteSetting+ReadOnlyConvertible.swift:23
#4	0x00000001069cf60c in protocol witness for ReadOnlyConvertible.toReadOnly() in conformance SiteSetting ()
#5	0x0000000106b9d4ec in closure #1 in ResultsController.fetchedObjects.getter at /Users/povilasstaskus/Projects/woocommerce-ios/Yosemite/Yosemite/Tools/ResultsController.swift:200
#6	0x0000000106b9eeb8 in partial apply for closure #1 in ResultsController.fetchedObjects.getter ()
#7	0x000000018a18e828 in merged Swift.Sequence.compactMap<τ_0_0>((τ_0_0.Element) throws -> Swift.Optional<τ_1_0>) throws -> Swift.Array<τ_1_0> ()
#8	0x000000018a0faa4c in Swift.Sequence.compactMap<τ_0_0>((τ_0_0.Element) throws -> Swift.Optional<τ_1_0>) throws -> Swift.Array<τ_1_0> ()
#9	0x0000000106b9d398 in ResultsController.fetchedObjects.getter at /Users/povilasstaskus/Projects/woocommerce-ios/Yosemite/Yosemite/Tools/ResultsController.swift:199
#10	0x00000001096a1f6c in SelectedSiteSettings.refreshResultsPredicate() at /Users/povilasstaskus/Projects/woocommerce-ios/WooCommerce/Classes/Tools/Shared Site Settings/SelectedSiteSettings.swift:68
#11	0x00000001096a1830 in SelectedSiteSettings.configureResultsController() at /Users/povilasstaskus/Projects/woocommerce-ios/WooCommerce/Classes/Tools/Shared Site Settings/SelectedSiteSettings.swift:55
#12	0x00000001096a174c in SelectedSiteSettings.init(stores:storageManager:) at /Users/povilasstaskus/Projects/woocommerce-ios/WooCommerce/Classes/Tools/Shared Site Settings/SelectedSiteSettings.swift:33
#13	0x00000001096a15d4 in SelectedSiteSettings.__allocating_init(stores:storageManager:) ()
#14	0x000000010969c9dc in CardPresentPaymentsOnboardingUseCase.storeCountryCode.getter at /Users/povilasstaskus/Projects/woocommerce-ios/WooCommerce/Classes/ViewRelated/Dashboard/Settings/In-Person Payments/CardPresentPaymentsOnboardingUseCase.swift:438
#15	0x000000010969acd4 in CardPresentPaymentsOnboardingUseCase.checkOnboardingState() at /Users/povilasstaskus/Projects/woocommerce-ios/WooCommerce/Classes/ViewRelated/Dashboard/Settings/In-Person Payments/CardPresentPaymentsOnboardingUseCase.swift:276
#16	0x0000000109698ed0 in CardPresentPaymentsOnboardingUseCase.updateState() at /Users/povilasstaskus/Projects/woocommerce-ios/WooCommerce/Classes/ViewRelated/Dashboard/Settings/In-Person Payments/CardPresentPaymentsOnboardingUseCase.swift:190
#17	0x0000000109698e00 in CardPresentPaymentsOnboardingUseCase.init(storageManager:stores:cardPresentPaymentOnboardingStateCache:analytics:) at /Users/povilasstaskus/Projects/woocommerce-ios/WooCommerce/Classes/ViewRelated/Dashboard/Settings/In-Person Payments/CardPresentPaymentsOnboardingUseCase.swift:88
#18	0x0000000109698a9c in CardPresentPaymentsOnboardingUseCase.__allocating_init(storageManager:stores:cardPresentPaymentOnboardingStateCache:analytics:) ()
#19	0x000000010a325b98 in default argument 1 of ReceiptEligibilityUseCase.init(stores:cardPresentPaymentsOnboarding:featureFlagService:) at /Users/povilasstaskus/Projects/woocommerce-ios/WooCommerce/Classes/ViewModels/Order Details/Receipts/ReceiptEligibilityUseCase.swift:20
#20	0x0000000109de9fe0 in default argument 13 of CollectOrderPaymentUseCase.init(siteID:order:formattedAmount:rootViewController:configuration:stores:paymentOrchestrator:orderDurationRecorder:alertsPresenter:tapToPayAlertsProvider:bluetoothAlertsProvider:preflightController:analyticsTracker:receiptEligibilityUseCase:) at /Users/povilasstaskus/Projects/woocommerce-ios/WooCommerce/Classes/ViewRelated/Orders/Collect Payments/CollectOrderPaymentUseCase.swift:110
#21	0x0000000109fa9de8 in closure #1 in CardPresentPaymentCollectOrderPaymentUseCaseAdaptor.collectPaymentTask(for:using:siteID:preflightController:onboardingPresenter:configuration:alertsPresenter:paymentEventSubject:channel:) at /Users/povilasstaskus/Projects/woocommerce-ios/WooCommerce/Classes/POS/Card Present Payments/CardPresentPaymentCollectOrderPaymentUseCaseAdaptor.swift:54

@joshheald
Copy link
Contributor

Confirmed fixed in 65a7b39, which is after the feat/14834-replace-local-filtering branch was merged.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature: POS type: crash The worst kind of bug.
Projects
None yet
Development

No branches or pull requests

3 participants