I'm writing a Quicklook plugin to preview App bundles. When I try to debug it under Xcode 6.1 (on Yosemite), I cannot get it to work. 'Quicklookd' launches and stays open in the dock but it doesn't render any preview and I get this output in the console:
Testing Quick Look preview with files:
/Applications/Font Book.app
[DEBUG] Preview test for file:///Applications/Font%20Book.app/. Content type UTI: com.apple.application-bundle
[DEBUG] Previewing file:///Applications/Font%20Book.app. Content type UTI: com.apple.application-bundle. Generator used: <QLGenerator /Users/imac/Library/QuickLook/TestPlugin.qlgenerator>
[DEBUG] Loading <QLGenerator /Users/imac/Library/QuickLook/TestPlugin.qlgenerator>
[DEBUG] Previewing file:///Applications/Font%20Book.app finished
2015-02-04 10:59:35.188 qlmanage[1664:138646] *** CFMessagePort: bootstrap_register(): failed 1100 (0x44c) 'Permission denied', port = 0x9103, name = 'com.apple.CFPasteboardClient'
See /usr/include/servers/bootstrap_defs.h for the error codes.
2015-02-04 10:59:35.188 qlmanage[1664:138646] Failed to allocate communication port for com.apple.CFPasteboardClient; this is likely due to sandbox restrictions
Feb 4 10:59:50 iMac.local qlmanage[1664] <Warning>: void CGSUpdateManager::log() const: conn 0x23823 token 0x1ffffffffffe85
Feb 4 10:59:50 iMac.local qlmanage[1664] <Warning>: Backtrace (at 6350.6):
Feb 4 10:59:50 iMac.local qlmanage[1664] <Warning>: void CGSUpdateManager::log() const: 0 CoreGraphics 0x00007fff894a9588 CGSBacktraceCreate + 112
Feb 4 10:59:50 iMac.local qlmanage[1664] <Warning>: void CGSUpdateManager::log() const: 1 CoreGraphics 0x00007fff894c7940 _ZN16CGSUpdateManager14disable_updateEv + 86
Feb 4 10:59:50 iMac.local qlmanage[1664] <Warning>: void CGSUpdateManager::log() const: 2 AppKit 0x00007fff90f0aa25 -[NSWindow disableScreenUpdatesUntilFlush] + 127
Feb 4 10:59:50 iMac.local qlmanage[1664] <Warning>: void CGSUpdateManager::log() const: 3 AppKit 0x00007fff91442e75 -[NSVisualEffectView _createOrUpdateBackdrop:view:vibrancyEffect:] + 823
Feb 4 10:59:50 iMac.local qlmanage[1664] <Warning>: void CGSUpdateManager::log() const: 4 AppKit 0x00007fff91443b92 -[NSVisualEffectView _updateCGSWindowBackdrop] + 70
Feb 4 10:59:50 iMac.local qlmanage[1664] <Warning>: void CGSUpdateManager::log() const: 5 AppKit 0x00007fff91447874 -[NSVisualEffectView _update] + 147
Feb 4 10:59:50 iMac.local qlmanage[1664] <Warning>: void CGSUpdateManager::log() const: 6 AppKit 0x00007fff914475a1 -[NSVisualEffectView layout] + 59
Feb 4 10:59:50 iMac.local qlmanage[1664] <Warning>: void CGSUpdateManager::log() const: 7 AppKit 0x00007fff90eeca64 -[NSView _layoutSubtreeWithOldSize:] + 373
Feb 4 10:59:50 iMac.local qlmanage[1664] <Warning>: void CGSUpdateManager::log() const: 8 AppKit 0x00007fff90eeccb5 -[NSView _layoutSubtreeWithOldSize:] + 966
Feb 4 10:59:50 iMac.local qlmanage[1664] <Warning>: void CGSUpdateManager::log() const: 9 AppKit 0x00007fff90ee04a0 -[NSView layoutSubtreeIfNeeded] + 885
Feb 4 10:59:50 iMac.local qlmanage[1664] <Warning>: void CGSUpdateManager::log() const: 10 AppKit 0x00007fff9155ff0a _NSViewLayoutSubtreesThatUseAutolayoutIfNeeded + 71
Feb 4 10:59:50 iMac.local qlmanage[1664] <Warning>: void CGSUpdateManager::log() const: 11 AppKit 0x00007fff90f4181f -[NSWindow(NSConstraintBasedLayout) _layoutViewTree] + 82
Feb 4 10:59:50 iMac.local qlmanage[1664] <Warning>: void CGSUpdateManager::log() const: 12 AppKit 0x00007fff90f711b9 -[NSWindow(NSConstraintBasedLayout) layoutIfNeeded] + 244
Feb 4 10:59:50 iMac.local qlmanage[1664] <Warning>: void CGSUpdateManager::log() const: 13 AppKit 0x00007fff90fad1de _handleWindowNeedsDisplayOrLayoutOrUpdateConstraints + 612
Feb 4 10:59:50 iMac.local qlmanage[1664] <Warning>: void CGSUpdateManager::log() const: 14 AppKit 0x00007fff915760e1 __83-[NSWindow _postWindowNeedsDisplayOrLayoutOrUpdateConstraintsUnlessPostingDisabled]_block_invoke1531 + 46
Feb 4 10:59:50 iMac.local qlmanage[1664] <Warning>: void CGSUpdateManager::log() const: 15 CoreFoundation 0x00007fff8b97bda7 __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 23
Feb 4 10:59:50 iMac.local qlmanage[1664] <Warning>: void CGSUpdateManager::log() const: 16 CoreFoundation 0x00007fff8b97bd00 __CFRunLoopDoObservers + 368
Feb 4 10:59:50 iMac.local qlmanage[1664] <Warning>: void CGSUpdateManager::log() const: 17 CoreFoundation 0x00007fff8b96de08 __CFRunLoopRun + 872
Feb 4 10:59:50 iMac.local qlmanage[1664] <Warning>: void CGSUpdateManager::log() const: 18 CoreFoundation 0x00007fff8b96d858 CFRunLoopRunSpecific + 296
Feb 4 10:59:50 iMac.local qlmanage[1664] <Warning>: void CGSUpdateManager::log() const: 19 QuickLookUI 0x00007fff93acb8d2 -[QLPreviewView _startTimeOut] + 189
Feb 4 10:59:50 iMac.local qlmanage[1664] <Warning>: void CGSUpdateManager::log() const: 20 QuickLookUI 0x00007fff93aae35e -[QLPreviewPanelController _setCurrentPreviewItem:withTransition:blocking:] + 289
Feb 4 10:59:50 iMac.local qlmanage[1664] <Warning>: void CGSUpdateManager::log() const: 21 QuickLookUI 0x00007fff93aada93 -[QLPreviewPanelController _refreshLayoutAndContentBlocking:] + 250
Feb 4 10:59:50 iMac.local qlmanage[1664] <Warning>: void CGSUpdateManager::log() const: 22 QuickLookUI 0x00007fff93aaf139 -[QLPreviewPanelController willOpen] + 734
Feb 4 10:59:50 iMac.local qlmanage[1664] <Warning>: void CGSUpdateManager::log() const: 23 QuickLookUI 0x00007fff93aa5d04 -[QLPreviewPanel _openWithEffect:willOpen:toFullscreen:] + 897
Feb 4 10:59:50 iMac.local qlmanage[1664] <Warning>: void CGSUpdateManager::log() const: 24 qlmanage 0x0000000107b11e46 qlmanage + 155206
Feb 4 10:59:50 iMac.local qlmanage[1664] <Warning>: void CGSUpdateManager::log() const: 25 qlmanage 0x0000000107af14af qlmanage + 21679
Feb 4 10:59:50 iMac.local qlmanage[1664] <Warning>: void CGSUpdateManager::log() const: 26 libdyld.dylib 0x00007fff875985c9 start + 1
However, If I test it via Finder (pressing the spacebar) it works fine displaying the preview. The problem is i cannot debug it and don't get any logs. I'm using QLPreviewRequestSetDataRepresentation with 'kUTTypeHTML' content type UTI.
How can I solve this? It used to work fine on older versions of Xcode and OS X. I need to be able to debug my plugin from Xcode. Thanks.
I think it's pretty clear that it's a bug in qlmanage
(which is still present in 10.10.3 betas) — it doesn't show HTML output properly.
You can use two workarounds:
Use the qlmanage -t
(or -t -s someBiggerNumber
), if your code for generating thumbnails uses QLThumbnailRequestSetThumbnailWithDataRepresentation
and is substantially similar to the one for previews.
Use qlmanage -o dir
to output generated HTML to a file that you can inspect with Quicklook from Finder.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With