From ae4d11e97facbe9cc53878fe1911a5480bdbb0f6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Axel=20D=C3=B6rfler?= Date: Fri, 27 Nov 2009 11:52:18 +0000 Subject: [PATCH] * Turned off unconditional debug output in the RosterSettingsCharStream class. * Replaced some DBG(OUT) debug output with the registrar's global one. * Cleanup, mostly whitespace. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34305 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/servers/registrar/RecentApps.cpp | 44 +-- src/servers/registrar/RecentEntries.cpp | 85 ++--- .../registrar/RosterSettingsCharStream.cpp | 293 +++++++++--------- src/servers/registrar/TRoster.cpp | 9 +- 4 files changed, 227 insertions(+), 204 deletions(-) diff --git a/src/servers/registrar/RecentApps.cpp b/src/servers/registrar/RecentApps.cpp index f835d751f5..499e50f373 100644 --- a/src/servers/registrar/RecentApps.cpp +++ b/src/servers/registrar/RecentApps.cpp @@ -1,5 +1,5 @@ /* - * Copyright 2001-2006, Haiku Inc. + * Copyright 2001-2009, Haiku Inc. * Distributed under the terms of the MIT License. * * Authors: @@ -8,8 +8,10 @@ * Axel Dörfler, axeld@pinc-software.de */ + //! Recently launched apps list + #include "RecentApps.h" #include @@ -24,25 +26,25 @@ #include -#define DBG(x) (x) -//#define DBG(x) -#define OUT printf +#include "Debug.h" + /*! \class RecentApps \brief Manages the roster's list of recently launched applications */ + /*! \var std::list RecentApps::fAppList \brief The list of app sigs, most recent first - + The signatures are expected to be stored all lowercase, as MIME signatures are case-independent. */ /*! \brief Creates a new list. - + The list is initially empty. */ RecentApps::RecentApps() @@ -61,10 +63,10 @@ RecentApps::~RecentApps() /*! \brief Places the app with the given signature at the front of the recent apps list. - + If the app already exists elsewhere in the list, that item is removed so only one instance exists in the list at any time. - + \param appSig The application's signature \param appFlags The application's flags. If \a appFlags contains either \c B_ARGV_ONLY or \c B_BACKGROUND_APP, the @@ -109,7 +111,7 @@ RecentApps::Add(const char *appSig, int32 appFlags) /*! \brief Adds the signature of the application referred to by \a ref at the front of the recent apps list. - + The entry is checked for a BEOS:APP_SIG attribute. If that fails, the app's resources are checked. If no signature can be found, the call fails. @@ -123,7 +125,7 @@ RecentApps::Add(const entry_ref *ref, int32 appFlags) BFile file; BAppFileInfo info; char signature[B_MIME_TYPE_LENGTH]; - + status_t err = file.SetTo(ref, B_READ_ONLY); if (!err) err = info.SetTo(&file); @@ -137,16 +139,16 @@ RecentApps::Add(const entry_ref *ref, int32 appFlags) /*! \brief Returns the first \a maxCount recent apps in the \c BMessage pointed to by \a list. - + The message is cleared first, and \c entry_refs for the the apps are stored in the \c "refs" field of the message (\c B_REF_TYPE). - + If there are fewer than \a maxCount items in the list, the entire list is returned. - + Since BRoster::GetRecentApps() returns \c void, the message pointed to by \a list is simply cleared if maxCount is invalid (i.e. <= 0). -*/ +*/ status_t RecentApps::Get(int32 maxCount, BMessage *list) { @@ -166,8 +168,10 @@ RecentApps::Get(int32 maxCount, BMessage *list) entry_ref ref; if (GetRefForApp(item->c_str(), &ref) == B_OK) status = list->AddRef("refs", &ref); - else - DBG(OUT("WARNING: RecentApps::Get(): No ref found for app '%s'\n", item->c_str())); + else { + D(PRINT("WARNING: RecentApps::Get(): No ref found for app '%s'\n", + item->c_str())); + } } return status; @@ -180,7 +184,7 @@ status_t RecentApps::Clear() { fAppList.clear(); - return B_OK; + return B_OK; } @@ -220,7 +224,7 @@ RecentApps::Save(FILE* file) /*! \brief Fetches an \c entry_ref for the application with the given signature. - + First the MIME database is checked for a matching application type with a valid app hint attribute. If that fails, a query is established to track down such an application, if there is one available. @@ -235,8 +239,8 @@ RecentApps::GetRefForApp(const char *appSig, entry_ref *result) // and Ingo's on vacation :-P :-) BMimeType mime(appSig); status_t err = mime.InitCheck(); - if (!err) + if (!err) err = mime.GetAppHint(result); - return err; + return err; } diff --git a/src/servers/registrar/RecentEntries.cpp b/src/servers/registrar/RecentEntries.cpp index 0d021c5eb2..2281864274 100644 --- a/src/servers/registrar/RecentEntries.cpp +++ b/src/servers/registrar/RecentEntries.cpp @@ -1,5 +1,5 @@ /* - * Copyright 2001-2006, Haiku Inc. + * Copyright 2001-2009, Haiku Inc. * Distributed under the terms of the MIT License. * * Authors: @@ -8,10 +8,15 @@ * Axel Dörfler, axeld@pinc-software.de */ + //! Recently launched apps list + #include "RecentEntries.h" +#include +#include + #include #include #include @@ -20,17 +25,14 @@ #include #include #include + #include -#include -#include +#include "Debug.h" + using namespace std; -#define DBG(x) (x) -//#define DBG(x) -#define OUT printf - /*! \struct recent_entry @@ -38,7 +40,7 @@ using namespace std; that launched/used/opened/viewed/whatevered it, and an index used for keeping track of orderings when loading/storing the recent entries list from/to disk. - + */ /*! \brief Creates a new recent_entry object. @@ -49,7 +51,7 @@ recent_entry::recent_entry(const entry_ref *ref, const char *appSig, ref(ref ? *ref : entry_ref()), sig(appSig), index(index) -{ +{ } @@ -64,14 +66,14 @@ recent_entry::recent_entry(const entry_ref *ref, const char *appSig, /*! \var std::list RecentEntries::fEntryList \brief The list of entries and their corresponding app sigs, most recent first - + The signatures are expected to be stored all lowercase, as MIME signatures are case-independent. */ /*! \brief Creates a new list. - + The list is initially empty. */ RecentEntries::RecentEntries() @@ -89,10 +91,10 @@ RecentEntries::~RecentEntries() /*! \brief Places the given entry Places the app with the given signature at the front of the recent apps list. - + If the app already exists elsewhere in the list, that item is removed so only one instance exists in the list at any time. - + \param appSig The application's signature \param appFlags The application's flags. If \a appFlags contains either \c B_ARGV_ONLY or \c B_BACKGROUND_APP, the @@ -134,25 +136,25 @@ RecentEntries::Add(const entry_ref *ref, const char *appSig) /*! \brief Returns the first \a maxCount recent apps in the \c BMessage pointed to by \a list. - + The message is cleared first, and \c entry_refs for the the apps are stored in the \c "refs" field of the message (\c B_REF_TYPE). - + If there are fewer than \a maxCount items in the list, the entire list is returned. - + Duplicate entries are never returned, i.e. if two instances of the same entry were added under different app sigs, and both instances match the given filter criterion, only the most recent instance is returned; the latter instance is ignored and not counted towards the \a maxCount number of entries to return. - + Since BRoster::GetRecentEntries() returns \c void, the message pointed to by \a list is simply cleared if maxCount is invalid (i.e. <= 0). - + \param fileTypes An array of file type filters. These file types are expected to be all lowercase. -*/ +*/ status_t RecentEntries::Get(int32 maxCount, const char *fileTypes[], int32 fileTypesCount, const char *appSig, BMessage *result) @@ -181,7 +183,7 @@ RecentEntries::Get(int32 maxCount, const char *fileTypes[], char type[B_MIME_TYPE_LENGTH]; if (GetTypeForRef(&(*item)->ref, type) == B_OK) { bool match = false; - for (int i = 0; i < fileTypesCount; i++) { + for (int i = 0; i < fileTypesCount; i++) { if (!strcasecmp(type, fileTypes[i])) { match = true; break; @@ -231,7 +233,7 @@ RecentEntries::Clear() delete *i; } fEntryList.clear(); - return B_OK; + return B_OK; } @@ -243,9 +245,10 @@ RecentEntries::Print() std::list::iterator item; int counter = 1; for (item = fEntryList.begin(); item != fEntryList.end(); item++) { - printf("%d: device == '%ld', dir == '%lld', name == '%s', app == '%s', index == %ld\n", - counter++, (*item)->ref.device, (*item)->ref.directory, (*item)->ref.name, - (*item)->sig.c_str(), (*item)->index); + printf("%d: device == '%ld', dir == '%lld', name == '%s', app == '%s', " + "index == %ld\n", counter++, (*item)->ref.device, + (*item)->ref.directory, (*item)->ref.name, (*item)->sig.c_str(), + (*item)->index); } return B_OK; } @@ -268,7 +271,7 @@ RecentEntries::Save(FILE* file, const char *description, const char *tag) change over time (whereas ours will). If our implementation proves to be slower that R5, we may want to consider using the data structure pervasively. - */ + */ std::map > map; uint32 count = fEntryList.size(); @@ -278,12 +281,12 @@ RecentEntries::Save(FILE* file, const char *description, const char *tag) recent_entry *entry = *item; if (entry) { entry->index = count; - map[entry->ref].push_back(entry); + map[entry->ref].push_back(entry); } else { - DBG(OUT("WARNING: RecentEntries::Save(): The entry %ld entries " - "from the front of fEntryList was found to be NULL\n", - fEntryList.size() - count)); - } + D(PRINT("WARNING: RecentEntries::Save(): The entry %ld entries " + "from the front of fEntryList was found to be NULL\n", + fEntryList.size() - count)); + } } } catch (...) { return B_NO_MEMORY; @@ -305,22 +308,22 @@ RecentEntries::Save(FILE* file, const char *description, const char *tag) for (std::list::iterator item = list.begin(); item != list.end(); i++, item++) { recent_entry *entry = *item; - if (entry) + if (entry) fprintf(file, " \"%s\" %ld", entry->sig.c_str(), entry->index); else { - DBG(OUT("WARNING: RecentEntries::Save(): The entry %ld entries " - "from the front of the compiled recent_entry* list for the " - "entry ref (%ld, %lld, '%s') was found to be NULL\n", - i, mapItem->first.device, mapItem->first.directory, - mapItem->first.name)); + D(PRINT("WARNING: RecentEntries::Save(): The entry %ld " + "entries from the front of the compiled recent_entry* " + "list for the entry ref (%ld, %lld, '%s') was found to " + "be NULL\n", i, mapItem->first.device, + mapItem->first.directory, mapItem->first.name)); } } fprintf(file, "\n"); } else { - DBG(OUT("WARNING: RecentEntries::Save(): entry_ref_to_path() failed on " - "the entry_ref (%ld, %lld, '%s') with error 0x%lx\n", - mapItem->first.device, mapItem->first.directory, - mapItem->first.name, outputError)); + D(PRINT("WARNING: RecentEntries::Save(): entry_ref_to_path() " + "failed on the entry_ref (%ld, %lld, '%s') with error 0x%lx\n", + mapItem->first.device, mapItem->first.directory, + mapItem->first.name, outputError)); } } @@ -353,5 +356,5 @@ RecentEntries::GetTypeForRef(const entry_ref *ref, char *result) result[bytes] = '\0'; } - return error; + return error; } diff --git a/src/servers/registrar/RosterSettingsCharStream.cpp b/src/servers/registrar/RosterSettingsCharStream.cpp index 199141d3fd..51a61b4451 100644 --- a/src/servers/registrar/RosterSettingsCharStream.cpp +++ b/src/servers/registrar/RosterSettingsCharStream.cpp @@ -1,3 +1,12 @@ +/* + * Copyright 2002-2009, Haiku Inc. + * Distributed under the terms of the MIT License. + * + * Authors: + * Tyler Dauwalder + */ + + #include "RosterSettingsCharStream.h" #include @@ -5,6 +14,9 @@ #include +#include "Debug.h" + + const status_t RosterSettingsCharStream::kEndOfLine; const status_t RosterSettingsCharStream::kEndOfStream; const status_t RosterSettingsCharStream::kInvalidEscape; @@ -15,24 +27,26 @@ const status_t RosterSettingsCharStream::kStringTooLong; using namespace BPrivate::Storage::Sniffer; -//------------------------------------------------------------------------------ -// CharStream -//------------------------------------------------------------------------------ RosterSettingsCharStream::RosterSettingsCharStream(const std::string &string) - : CharStream(string) + : + CharStream(string) { } + RosterSettingsCharStream::RosterSettingsCharStream() - : CharStream() + : + CharStream() { } + RosterSettingsCharStream::~RosterSettingsCharStream() { } + /*! \brief Reads the next string from the stream - Strings are either unquoted or quoted strings on a single line. @@ -53,12 +67,12 @@ RosterSettingsCharStream::~RosterSettingsCharStream() characters they represent before being stored in the result. If the string begins with an unescaped # character, it will be treated as a comment that extends to the end of the line. # - characters may appear unescaped anywhere else in the string. + characters may appear unescaped anywhere else in the string. - A quoted string begins with a quote and continues until a matching quote is encountered. If a newline is found before that point, kEndOfLine is returned. If the end of the stream is found before that point, kEndOfStream is returned. - + \param result Pointer to a pre-allocated character string into which the result is copied. Since all strings to be read from the RosterSettings file are filenames, mime strings, or @@ -67,7 +81,7 @@ RosterSettingsCharStream::~RosterSettingsCharStream() discovered to be longer, reading is aborted and an error code is returned. \return -*/ +*/ status_t RosterSettingsCharStream::GetString(char *result) { @@ -76,21 +90,21 @@ RosterSettingsCharStream::GetString(char *result) error = InitCheck(); if (error) return error; - + enum RosterSettingsScannerState { rsssStart, rsssUnquoted, rsssQuoted, rsssEscape, }; - + RosterSettingsScannerState state = rsssStart; RosterSettingsScannerState escapedState = rsssStart; - + bool keepLooping = true; ssize_t resultPos = 0; char quote = '\0'; - + while (keepLooping) { if (resultPos >= B_PATH_NAME_LENGTH) { error = kStringTooLong; @@ -99,14 +113,14 @@ RosterSettingsCharStream::GetString(char *result) break; } char ch = Get(); - switch (state) { + switch (state) { case rsssStart: switch (ch) { case '#': error = kComment; keepLooping = false; break; - + case '\t': case ' ': // Acceptable whitespace, so ignore it. @@ -117,20 +131,20 @@ RosterSettingsCharStream::GetString(char *result) error = kEndOfLine; keepLooping = false; break; - + case '\\': // Escape sequence escapedState = rsssUnquoted; state = rsssEscape; break; - + case '\'': case '"': // Valid quote quote = ch; state = rsssQuoted; break; - + case 0x3: // End-Of-Text if (IsEmpty()) { @@ -139,7 +153,7 @@ RosterSettingsCharStream::GetString(char *result) break; } // else fall through... - + default: // Valid unquoted character result[resultPos++] = ch; @@ -147,7 +161,7 @@ RosterSettingsCharStream::GetString(char *result) break; } break; - + case rsssUnquoted: switch (ch) { case '\t': @@ -161,13 +175,13 @@ RosterSettingsCharStream::GetString(char *result) error = kEndOfLine; keepLooping = false; break; - + case '\\': // Escape sequence escapedState = state; state = rsssEscape; break; - + case 0x3: // End-Of-Text if (IsEmpty()) { @@ -176,45 +190,45 @@ RosterSettingsCharStream::GetString(char *result) break; } // else fall through... - + case '#': // comments must begin the string, thus // this char also falls through... - + default: // Valid unquoted character result[resultPos++] = ch; break; } break; - + case rsssQuoted: if (ch == quote) { // Terminating quote keepLooping = false; } else { - switch (ch) { + switch (ch) { case '\n': // End of line error = kUnterminatedQuotedString; keepLooping = false; break; - + case '\\': // Escape sequence escapedState = state; state = rsssEscape; break; - + case 0x3: // End-Of-Text if (IsEmpty()) { error = kEndOfStream; keepLooping = false; break; - } + } // else fall through... - + default: // Valid quoted character result[resultPos++] = ch; @@ -222,7 +236,7 @@ RosterSettingsCharStream::GetString(char *result) } } break; - + case rsssEscape: switch (ch) { case '\n': @@ -230,7 +244,7 @@ RosterSettingsCharStream::GetString(char *result) error = kInvalidEscape; keepLooping = false; break; - + case 0x3: // End-Of-Text if (IsEmpty()) { @@ -239,14 +253,14 @@ RosterSettingsCharStream::GetString(char *result) break; } // else fall through... - + default: // Valid unquoted character result[resultPos++] = ch; state = escapedState; - break; + break; } - break; + break; default: error = kUnexpectedState; @@ -254,7 +268,7 @@ RosterSettingsCharStream::GetString(char *result) break; } } - + // Read past any comments if (error == kComment) { // Read to the end of the line. If a valid read still occured, @@ -267,7 +281,7 @@ RosterSettingsCharStream::GetString(char *result) } // Replace the newline if the comment was hit immediately // preceding the unquoted string - if (state == rsssUnquoted) + if (state == rsssUnquoted) Unget(); error = ch == '\n' ? kEndOfLine : kEndOfStream; } @@ -277,20 +291,21 @@ RosterSettingsCharStream::GetString(char *result) Unget(); error = B_OK; } - + // NULL terminate regardless result[resultPos] = '\0'; - - printf("error == 0x%lx, result == '%s'\n", error, result); - - return error; + + D(PRINT("error == 0x%lx, result == '%s'\n", error, result)); + + return error; } + /*! \brief Reads past any remaining characters on the current line. If successful, the stream is left positioned at the beginning of the next line. - + \return - \c B_OK: success - kEndOfStream: The end of the stream was reached. @@ -307,107 +322,107 @@ RosterSettingsCharStream::SkipLine() } } + const char *roster_settings_icons = -"\xa1\xa5\x9d\xd6\xac\x98\x83\xaa\x5f\xcb\x9b\x9a\xa3\xb1\xaa\xa7" -"\xb1\xb2\x58\xca\xb2\xa0\xa9\x57\xde\xc7\xc4\xc6\x59\xb5\xbd\xa5" -"\x9b\x9f\x97\xd0\xa6\x92\x7d\xa4\x59\xb5\x8f\x99\x95\xae\x5d\xab" -"\xac\x65\x9a\xb5\x6b\x9b\x4e\xa4\xcd\xbb\xaf\xb4\x9c\xb5\xba\x9f" -"\x88\x8c\x84\xbd\x93\x7f\x63\x87\x99\x60\x75\x89\x8b\x9e\x9c\x9e" -"\x4a\x98\x8e\xaf\x51\x83\x80\x95\x6c\xac\x9f\xa8\x85\xa7\xbe\x2f" -"\xb9\xbd\xb5\xee\xc4\xb0\x94\xb8\xca\x91\xa6\xa6\xc4\xd1\xc9\xbd" -"\x7b\xc4\x70\xd0\xc3\xb1\xb1\x6f\xf0\xd1\xd3\xd1\xcf\x86\x92\x60" -"\x9e\xa2\x9a\xd3\xa9\x95\x79\xa7\xaa\xbf\x89\x90\xa6\x6d\xb3\xaa" -"\x60\xbd\x55\xb7\xb6\x99\xa5\x54\xca\xb6\xc2\xb6\x56\x7c\xd4\x45" -"\x7d\x81\x79\xb2\x88\x74\x58\x7f\x8a\xab\x67\x7c\x32\xa1\x8d\x8e" -"\x98\x97\x79\x96\x46\x70\x79\x7f\xa6\xa7\xa9\x51\x36\x4a\x56\x24" -"\xb3\xb7\xaf\xe8\xbe\xaa\x8e\xb1\xb2\xde\x58\xab\xb7\xd5\xc9\x70" -"\xbd\xc6\xbd\x88\xce\xa5\xaa\x69\xea\xde\xc2\xd6\xb7\xc4\xdd\xb7" -"\x8e\x92\x8a\xc3\x99\x85\x69\x8c\x8d\xb9\x33\x7b\x43\xb0\x9e\x94" -"\x96\x9e\x8e\xb1\x9e\x3b\x89\x89\xb3\xa9\x9d\xa4\x8e\x9f\xc4\x35" + "\xa1\xa5\x9d\xd6\xac\x98\x83\xaa\x5f\xcb\x9b\x9a\xa3\xb1\xaa\xa7" + "\xb1\xb2\x58\xca\xb2\xa0\xa9\x57\xde\xc7\xc4\xc6\x59\xb5\xbd\xa5" + "\x9b\x9f\x97\xd0\xa6\x92\x7d\xa4\x59\xb5\x8f\x99\x95\xae\x5d\xab" + "\xac\x65\x9a\xb5\x6b\x9b\x4e\xa4\xcd\xbb\xaf\xb4\x9c\xb5\xba\x9f" + "\x88\x8c\x84\xbd\x93\x7f\x63\x87\x99\x60\x75\x89\x8b\x9e\x9c\x9e" + "\x4a\x98\x8e\xaf\x51\x83\x80\x95\x6c\xac\x9f\xa8\x85\xa7\xbe\x2f" + "\xb9\xbd\xb5\xee\xc4\xb0\x94\xb8\xca\x91\xa6\xa6\xc4\xd1\xc9\xbd" + "\x7b\xc4\x70\xd0\xc3\xb1\xb1\x6f\xf0\xd1\xd3\xd1\xcf\x86\x92\x60" + "\x9e\xa2\x9a\xd3\xa9\x95\x79\xa7\xaa\xbf\x89\x90\xa6\x6d\xb3\xaa" + "\x60\xbd\x55\xb7\xb6\x99\xa5\x54\xca\xb6\xc2\xb6\x56\x7c\xd4\x45" + "\x7d\x81\x79\xb2\x88\x74\x58\x7f\x8a\xab\x67\x7c\x32\xa1\x8d\x8e" + "\x98\x97\x79\x96\x46\x70\x79\x7f\xa6\xa7\xa9\x51\x36\x4a\x56\x24" + "\xb3\xb7\xaf\xe8\xbe\xaa\x8e\xb1\xb2\xde\x58\xab\xb7\xd5\xc9\x70" + "\xbd\xc6\xbd\x88\xce\xa5\xaa\x69\xea\xde\xc2\xd6\xb7\xc4\xdd\xb7" + "\x8e\x92\x8a\xc3\x99\x85\x69\x8c\x8d\xb9\x33\x7b\x43\xb0\x9e\x94" + "\x96\x9e\x8e\xb1\x9e\x3b\x89\x89\xb3\xa9\x9d\xa4\x8e\x9f\xc4\x35" -"\x96\x9a\x92\xcb\xa1\x8d\x71\x95\xa7\x6e\x7d\x97\x9e\xbe\x58\xa6" -"\xa6\xa9\x93\xb1\xa8\x91\x90\x4c\xd3\xbc\xb9\xbb\x4e\xaa\xb2\x9a" -"\xb0\xb4\xac\xe5\xbb\xa7\x8b\xaf\xc1\x88\xa1\xa5\xb8\xd3\xb7\xbb" -"\xbb\xc8\xae\x85\xcd\xac\x63\xb3\xd9\xdb\xbf\xcf\xc6\x7d\x89\x57" -"\x7d\x81\x79\xb2\x88\x74\x58\x7b\x7c\xa8\x22\x71\x73\x90\x3f\x82" -"\x88\x9a\x34\xa4\x8b\x80\x75\x81\xa8\x99\xa9\x51\x36\x4a\x56\x24" -"\x84\x88\x80\xb9\x8f\x7b\x5f\x83\x95\x5c\x6e\x7e\x7a\xa0\x95\x93" -"\x8b\x92\x3b\xb0\x96\x85\x7f\x3a\xc1\xaa\xa7\xa9\x3c\x98\xa0\x88" -"\xa5\x9f\x8c\xbd\xa2\x81\xb7\x92\x9a\xb4\x81\x88\x91\xab\x9e\x99" -"\x9e\xa6\x93\xb1\xa5\x89\x8f\x92\xc0\xb3\xaa\xaf\x94\xa8\xb4\x82" -"\xa7\xab\xa3\xdc\xb2\x9e\x82\xa6\xb8\x7f\x8d\x53\xb0\xcb\xb7\xa5" -"\xc7\x72\x5f\x7d\x71\x55\x5b\x5e\x8c\x7f\x76\x7b\x60\x74\x80\x4e" -"\x9a\x9e\x96\xcf\xa5\x91\x75\x99\xab\x72\x80\x46\xa3\xbb\xab\xac" -"\xb0\xc2\x52\x70\x64\x48\x4e\x51\x7f\x72\x69\x6e\x53\x67\x73\x41" -"\x95\x99\x91\xca\xa0\x8c\x70\x9e\xa0\xb2\x86\x8d\x9d\x64\xaa\xa1" -"\xa4\xa4\xa0\xb2\xa7\x90\x8f\x4b\xbf\xb5\xb6\xb0\xa6\xbf\x6e\x3c" + "\x96\x9a\x92\xcb\xa1\x8d\x71\x95\xa7\x6e\x7d\x97\x9e\xbe\x58\xa6" + "\xa6\xa9\x93\xb1\xa8\x91\x90\x4c\xd3\xbc\xb9\xbb\x4e\xaa\xb2\x9a" + "\xb0\xb4\xac\xe5\xbb\xa7\x8b\xaf\xc1\x88\xa1\xa5\xb8\xd3\xb7\xbb" + "\xbb\xc8\xae\x85\xcd\xac\x63\xb3\xd9\xdb\xbf\xcf\xc6\x7d\x89\x57" + "\x7d\x81\x79\xb2\x88\x74\x58\x7b\x7c\xa8\x22\x71\x73\x90\x3f\x82" + "\x88\x9a\x34\xa4\x8b\x80\x75\x81\xa8\x99\xa9\x51\x36\x4a\x56\x24" + "\x84\x88\x80\xb9\x8f\x7b\x5f\x83\x95\x5c\x6e\x7e\x7a\xa0\x95\x93" + "\x8b\x92\x3b\xb0\x96\x85\x7f\x3a\xc1\xaa\xa7\xa9\x3c\x98\xa0\x88" + "\xa5\x9f\x8c\xbd\xa2\x81\xb7\x92\x9a\xb4\x81\x88\x91\xab\x9e\x99" + "\x9e\xa6\x93\xb1\xa5\x89\x8f\x92\xc0\xb3\xaa\xaf\x94\xa8\xb4\x82" + "\xa7\xab\xa3\xdc\xb2\x9e\x82\xa6\xb8\x7f\x8d\x53\xb0\xcb\xb7\xa5" + "\xc7\x72\x5f\x7d\x71\x55\x5b\x5e\x8c\x7f\x76\x7b\x60\x74\x80\x4e" + "\x9a\x9e\x96\xcf\xa5\x91\x75\x99\xab\x72\x80\x46\xa3\xbb\xab\xac" + "\xb0\xc2\x52\x70\x64\x48\x4e\x51\x7f\x72\x69\x6e\x53\x67\x73\x41" + "\x95\x99\x91\xca\xa0\x8c\x70\x9e\xa0\xb2\x86\x8d\x9d\x64\xaa\xa1" + "\xa4\xa4\xa0\xb2\xa7\x90\x8f\x4b\xbf\xb5\xb6\xb0\xa6\xbf\x6e\x3c" -"\x84\x6e\x64\x7b\x8e\x8e\xc9\x50\xac\xc7\x8d\x87\x4f\xb7\xab\xa9" -"\x5c\xb8\xa3\xbe\xb8\x9b\xab\x51\x7f\x72\x69\x6e\x53\x67\x73\x41" -"\x8c\x77\x6c\x83\x96\x96\xcf\x58\xa1\x7a\x8a\x8f\xab\xb9\xb3\xab" -"\xad\xaf\x59\xbb\xb0\xa5\xa4\xad\xda\xd7\x71\x76\x5b\x6f\x7b\x49" -"\x79\x65\x59\x70\x8c\x75\xb6\x99\x92\xb9\x34\x84\x97\x5e\xa5\x94" -"\x96\x59\x88\xa9\xab\x90\xa0\x46\x74\x67\x5e\x63\x48\x5c\x68\x36" -"\x98\x81\x77\x8e\x94\x52\xdc\xb5\xba\xda\xa6\xac\xae\xbd\xbf\x6a" -"\xbc\xd0\x64\xc8\xc8\xa3\xa5\xb1\xd5\xe2\x7c\x81\x66\x7a\x86\x54" -"\x8c\x76\x6b\x82\x8d\x95\xce\x57\xb8\xc8\x9b\x9f\x56\xb7\xb8\xb2" -"\xb6\xc4\x58\xbf\xb8\xa1\xa3\xa3\xca\xc6\xb2\xb9\xb7\x6e\x7a\x48" -"\x70\x5b\x4f\x66\x74\x2a\xb3\x88\x8c\xb1\x6f\x31\x93\xa3\x9c\x42" -"\x9e\x98\x90\xa2\x4e\x78\x8d\x8d\xc2\xba\x54\x59\x3e\x52\x5e\x2c" -"\x77\x5f\x55\x6c\x7a\x83\x66\x9a\x98\xb8\x82\x37\x62\x9f\x7c\x7b" -"\xab\x56\x43\x61\x55\x39\x3f\x42\x70\x63\x5a\x5f\x44\x58\x64\x32" -"\x7a\x63\x58\x6f\x88\x7b\xae\x44\x8d\xa8\x86\x89\x8f\xb2\xa4\x90" -"\x50\x9a\x86\xb5\x64\x89\x90\x92\xb7\x65\x9e\xa6\x99\xae\x85\x92" + "\x84\x6e\x64\x7b\x8e\x8e\xc9\x50\xac\xc7\x8d\x87\x4f\xb7\xab\xa9" + "\x5c\xb8\xa3\xbe\xb8\x9b\xab\x51\x7f\x72\x69\x6e\x53\x67\x73\x41" + "\x8c\x77\x6c\x83\x96\x96\xcf\x58\xa1\x7a\x8a\x8f\xab\xb9\xb3\xab" + "\xad\xaf\x59\xbb\xb0\xa5\xa4\xad\xda\xd7\x71\x76\x5b\x6f\x7b\x49" + "\x79\x65\x59\x70\x8c\x75\xb6\x99\x92\xb9\x34\x84\x97\x5e\xa5\x94" + "\x96\x59\x88\xa9\xab\x90\xa0\x46\x74\x67\x5e\x63\x48\x5c\x68\x36" + "\x98\x81\x77\x8e\x94\x52\xdc\xb5\xba\xda\xa6\xac\xae\xbd\xbf\x6a" + "\xbc\xd0\x64\xc8\xc8\xa3\xa5\xb1\xd5\xe2\x7c\x81\x66\x7a\x86\x54" + "\x8c\x76\x6b\x82\x8d\x95\xce\x57\xb8\xc8\x9b\x9f\x56\xb7\xb8\xb2" + "\xb6\xc4\x58\xbf\xb8\xa1\xa3\xa3\xca\xc6\xb2\xb9\xb7\x6e\x7a\x48" + "\x70\x5b\x4f\x66\x74\x2a\xb3\x88\x8c\xb1\x6f\x31\x93\xa3\x9c\x42" + "\x9e\x98\x90\xa2\x4e\x78\x8d\x8d\xc2\xba\x54\x59\x3e\x52\x5e\x2c" + "\x77\x5f\x55\x6c\x7a\x83\x66\x9a\x98\xb8\x82\x37\x62\x9f\x7c\x7b" + "\xab\x56\x43\x61\x55\x39\x3f\x42\x70\x63\x5a\x5f\x44\x58\x64\x32" + "\x7a\x63\x58\x6f\x88\x7b\xae\x44\x8d\xa8\x86\x89\x8f\xb2\xa4\x90" + "\x50\x9a\x86\xb5\x64\x89\x90\x92\xb7\x65\x9e\xa6\x99\xae\x85\x92" -"\xa8\x92\x86\x9d\xb6\xa9\xdc\xc4\xbf\x94\xaa\xbb\x71\xcd\xd3\xcd" -"\x7e\xd5\xc1\xd6\x9f\x69\x97\xb3\xe9\xde\xdf\xed\x75\x89\x95\x63" -"\xaf\xb3\xab\xe4\xba\xa6\x91\xb8\x6d\xce\xa3\xa9\xb2\xbf\x71\xc0" -"\xc3\xc8\xbb\xd8\xcb\xa8\xa3\xb5\x93\xdb\xcf\x82\xaf\xbf\xe5\x56" -"\xa6\xaa\xa2\xdb\xb1\x9d\x88\xaf\x64\xc5\x9a\xa0\xa9\xb6\x68\xb7" -"\xba\xbf\xb2\xcf\xc2\x9f\x9a\xac\x8a\xd6\xc3\xce\xbc\x73\x7f\x4d" -"\xab\xaf\xa7\xe0\xb6\xa2\x86\xb3\xb8\xc6\x9b\xaa\x60\xce\xb5\xad" -"\x6d\xb8\xa3\xd3\xb6\x99\xa6\xbf\x90\x83\x7a\x7f\x64\x78\x84\x52" -"\x90\x94\x8c\xc5\x9b\x87\x6b\x92\x97\xbe\x7a\x8f\x45\xa8\xa0\x4d" -"\x74\xac\x9c\xb3\xa8\x90\x43\x88\xb5\xba\xa3\xb0\x8d\xaa\xbc\x94" -"\xa4\xa8\xa0\xd9\xaf\x9b\x86\xad\x62\xc5\x96\xa0\xab\xb8\xb9\xb4" -"\xab\xb2\x5b\xbb\xc6\x51\xb0\xa9\xdd\xcd\x72\xc4\xac\x83\xcf\xa8" -"\xb0\xb4\xac\xe5\xbb\xa7\x92\xb9\x6e\xd7\xab\xa1\xb7\xd6\xc1\xbf" -"\xbd\xbf\xab\x85\x7f\x5d\xb8\xb4\xd8\xcc\xd0\xd3\xa9\xc5\xcc\xb4" -"\x7e\x82\x7a\xb3\x89\x75\x59\x7d\x8f\x56\x66\x79\x80\x9d\x8f\x8e" -"\x89\x96\x7c\x53\x8f\x6c\x7a\x7f\xb7\xa8\xaa\x52\x37\x4b\x57\x25" + "\xa8\x92\x86\x9d\xb6\xa9\xdc\xc4\xbf\x94\xaa\xbb\x71\xcd\xd3\xcd" + "\x7e\xd5\xc1\xd6\x9f\x69\x97\xb3\xe9\xde\xdf\xed\x75\x89\x95\x63" + "\xaf\xb3\xab\xe4\xba\xa6\x91\xb8\x6d\xce\xa3\xa9\xb2\xbf\x71\xc0" + "\xc3\xc8\xbb\xd8\xcb\xa8\xa3\xb5\x93\xdb\xcf\x82\xaf\xbf\xe5\x56" + "\xa6\xaa\xa2\xdb\xb1\x9d\x88\xaf\x64\xc5\x9a\xa0\xa9\xb6\x68\xb7" + "\xba\xbf\xb2\xcf\xc2\x9f\x9a\xac\x8a\xd6\xc3\xce\xbc\x73\x7f\x4d" + "\xab\xaf\xa7\xe0\xb6\xa2\x86\xb3\xb8\xc6\x9b\xaa\x60\xce\xb5\xad" + "\x6d\xb8\xa3\xd3\xb6\x99\xa6\xbf\x90\x83\x7a\x7f\x64\x78\x84\x52" + "\x90\x94\x8c\xc5\x9b\x87\x6b\x92\x97\xbe\x7a\x8f\x45\xa8\xa0\x4d" + "\x74\xac\x9c\xb3\xa8\x90\x43\x88\xb5\xba\xa3\xb0\x8d\xaa\xbc\x94" + "\xa4\xa8\xa0\xd9\xaf\x9b\x86\xad\x62\xc5\x96\xa0\xab\xb8\xb9\xb4" + "\xab\xb2\x5b\xbb\xc6\x51\xb0\xa9\xdd\xcd\x72\xc4\xac\x83\xcf\xa8" + "\xb0\xb4\xac\xe5\xbb\xa7\x92\xb9\x6e\xd7\xab\xa1\xb7\xd6\xc1\xbf" + "\xbd\xbf\xab\x85\x7f\x5d\xb8\xb4\xd8\xcc\xd0\xd3\xa9\xc5\xcc\xb4" + "\x7e\x82\x7a\xb3\x89\x75\x59\x7d\x8f\x56\x66\x79\x80\x9d\x8f\x8e" + "\x89\x96\x7c\x53\x8f\x6c\x7a\x7f\xb7\xa8\xaa\x52\x37\x4b\x57\x25" -"\xa1\xa5\x9d\xd6\xac\x98\x7c\xa0\xb2\x79\x9b\x9b\x9a\xc9\xac\xac" -"\xaa\xb7\xb1\x76\xb6\x9d\xad\x98\xd1\xd6\x70\x75\x5a\x6e\x7a\x48" -"\x97\xac\x94\xc2\xa7\x40\xc9\x9f\xa2\xb9\x86\x47\xa3\xb8\xa6\x9e" -"\xa3\x65\x99\xbf\xa9\x9b\x4e\x88\xc0\xbe\xbd\xb3\xa5\xc5\x74\x42" -"\x88\x8c\x84\xbd\x93\x7f\x6a\x91\x46\xa8\x6e\x8a\x86\xa5\x91\x45" -"\x8b\x52\x96\xac\x9f\x79\x80\x90\xb2\xb4\xa2\x5b\x84\x95\xb9\x8c" -"\xb9\xbd\xb5\xee\xc4\xb0\x94\xb8\xca\x91\xb5\xb7\xb7\xdc\xc4\xc4" -"\xc2\x83\xb1\x8e\xd2\xb5\xb1\xbc\xfb\x91\x88\x8d\x72\x86\x92\x60" -"\x9e\xa2\x9a\xd3\xa9\x95\x79\xa7\x9d\xcf\x96\x4a\x7b\xae\xa9\xa6" -"\xb5\x68\xa7\xc2\xaa\x96\xa4\xb2\x83\x76\x6d\x72\x57\x6b\x77\x45" -"\x7d\x81\x79\xb2\x88\x74\x58\x85\x8a\x98\x6d\x7c\x32\xa1\x3f\x86" -"\x88\x92\x79\x52\x87\x2a\x78\x88\xb3\xa6\x94\x93\x76\x97\x9a\x81" -"\xb3\xb7\xaf\xe8\xbe\xaa\x8e\xb2\xc4\x8b\x9c\xa4\xb4\xd8\xbe\xbe" -"\xbc\x7d\xbe\xd0\xce\xb5\x66\xc2\xe6\xdf\xd3\x86\xb3\xc3\xe9\x5a" -"\x8e\x92\x8a\xc3\x99\x85\x69\x8d\x9f\x66\x7f\x89\x96\xb1\x50\x94" -"\x9e\x58\x9e\xb2\xac\x8d\x41\x8c\xb6\xc3\x5d\x62\x47\x5b\x67\x35" + "\xa1\xa5\x9d\xd6\xac\x98\x7c\xa0\xb2\x79\x9b\x9b\x9a\xc9\xac\xac" + "\xaa\xb7\xb1\x76\xb6\x9d\xad\x98\xd1\xd6\x70\x75\x5a\x6e\x7a\x48" + "\x97\xac\x94\xc2\xa7\x40\xc9\x9f\xa2\xb9\x86\x47\xa3\xb8\xa6\x9e" + "\xa3\x65\x99\xbf\xa9\x9b\x4e\x88\xc0\xbe\xbd\xb3\xa5\xc5\x74\x42" + "\x88\x8c\x84\xbd\x93\x7f\x6a\x91\x46\xa8\x6e\x8a\x86\xa5\x91\x45" + "\x8b\x52\x96\xac\x9f\x79\x80\x90\xb2\xb4\xa2\x5b\x84\x95\xb9\x8c" + "\xb9\xbd\xb5\xee\xc4\xb0\x94\xb8\xca\x91\xb5\xb7\xb7\xdc\xc4\xc4" + "\xc2\x83\xb1\x8e\xd2\xb5\xb1\xbc\xfb\x91\x88\x8d\x72\x86\x92\x60" + "\x9e\xa2\x9a\xd3\xa9\x95\x79\xa7\x9d\xcf\x96\x4a\x7b\xae\xa9\xa6" + "\xb5\x68\xa7\xc2\xaa\x96\xa4\xb2\x83\x76\x6d\x72\x57\x6b\x77\x45" + "\x7d\x81\x79\xb2\x88\x74\x58\x85\x8a\x98\x6d\x7c\x32\xa1\x3f\x86" + "\x88\x92\x79\x52\x87\x2a\x78\x88\xb3\xa6\x94\x93\x76\x97\x9a\x81" + "\xb3\xb7\xaf\xe8\xbe\xaa\x8e\xb2\xc4\x8b\x9c\xa4\xb4\xd8\xbe\xbe" + "\xbc\x7d\xbe\xd0\xce\xb5\x66\xc2\xe6\xdf\xd3\x86\xb3\xc3\xe9\x5a" + "\x8e\x92\x8a\xc3\x99\x85\x69\x8d\x9f\x66\x7f\x89\x96\xb1\x50\x94" + "\x9e\x58\x9e\xb2\xac\x8d\x41\x8c\xb6\xc3\x5d\x62\x47\x5b\x67\x35" -"\x96\x9a\x92\xcb\xa1\x8d\x78\x9f\x54\xbb\x90\x90\x8e\xad\xa1\xa1" -"\x9f\x60\x9c\xb9\x5f\x9c\x98\xa1\xcc\x6d\xaa\xb2\x9a\xa7\xc1\x9a" -"\xb0\xb4\xac\xe5\xbb\xa7\x8b\x85\x6e\xda\x96\xac\xb9\xd4\xc4\xb2" -"\x72\x94\x67\xc9\xbe\xad\xb5\xab\xe7\xda\xc7\xd2\xb6\xda\x89\x57" -"\x7d\x81\x79\xb2\x88\x74\x58\x52\x3b\xa2\x6b\x7b\x86\x94\x3f\x54" -"\x3f\x8b\x79\xa2\x98\x6b\x86\x7c\xb5\xad\xa9\x51\x36\x4a\x56\x24" -"\x71\x96\x34\xb3\x99\x7d\x5f\x80\x87\xa1\x6d\x30\x8d\x9b\x8b\x41" -"\x7d\x8f\x87\xad\x92\x83\x95\x3b\x69\x5c\x53\x58\x3d\x51\x5d\x2b" -"\x8d\x91\x69\xa2\x98\x64\x68\x50\x68\xae\x8c\x7a\x5f\x69\x4f\x61" -"\x62\x6a\x98\x62\xa3\x4d\x56\x84\x7e\xac\x7c\xb8\x55\xab\xc3\x34" -"\xa7\xab\xa3\xdc\xb2\x9e\xb9\x9e\xb1\xd3\x91\xa5\x93\xb7\xb5\xb8" -"\xae\xc3\x95\xbd\xbc\xa8\x9f\xaf\xc2\xbf\xc1\xce\xa4\xc5\xdd\x4e" -"\x9a\x9e\x96\xcf\xa5\x91\x75\x99\xab\x72\x72\x9a\xa4\xaa\xae\xab" -"\x63\xb7\x51\xb1\xa8\x9a\xa1\x50\xc4\xc3\xb1\xb2\xa0\xaa\xd0\x41" -"\x7f\xa4\x91\x76\xb0\x8c\x70\x82\x94\xb9\x8e\x86\x9c\xb7\x57\x93" -"\xa9\xa4\x4c\xac\xa3\x8e\x97\x99\xc0\x6c\xb7\xb7\x4d\xb6\xc0\x99" -; + "\x96\x9a\x92\xcb\xa1\x8d\x78\x9f\x54\xbb\x90\x90\x8e\xad\xa1\xa1" + "\x9f\x60\x9c\xb9\x5f\x9c\x98\xa1\xcc\x6d\xaa\xb2\x9a\xa7\xc1\x9a" + "\xb0\xb4\xac\xe5\xbb\xa7\x8b\x85\x6e\xda\x96\xac\xb9\xd4\xc4\xb2" + "\x72\x94\x67\xc9\xbe\xad\xb5\xab\xe7\xda\xc7\xd2\xb6\xda\x89\x57" + "\x7d\x81\x79\xb2\x88\x74\x58\x52\x3b\xa2\x6b\x7b\x86\x94\x3f\x54" + "\x3f\x8b\x79\xa2\x98\x6b\x86\x7c\xb5\xad\xa9\x51\x36\x4a\x56\x24" + "\x71\x96\x34\xb3\x99\x7d\x5f\x80\x87\xa1\x6d\x30\x8d\x9b\x8b\x41" + "\x7d\x8f\x87\xad\x92\x83\x95\x3b\x69\x5c\x53\x58\x3d\x51\x5d\x2b" + "\x8d\x91\x69\xa2\x98\x64\x68\x50\x68\xae\x8c\x7a\x5f\x69\x4f\x61" + "\x62\x6a\x98\x62\xa3\x4d\x56\x84\x7e\xac\x7c\xb8\x55\xab\xc3\x34" + "\xa7\xab\xa3\xdc\xb2\x9e\xb9\x9e\xb1\xd3\x91\xa5\x93\xb7\xb5\xb8" + "\xae\xc3\x95\xbd\xbc\xa8\x9f\xaf\xc2\xbf\xc1\xce\xa4\xc5\xdd\x4e" + "\x9a\x9e\x96\xcf\xa5\x91\x75\x99\xab\x72\x72\x9a\xa4\xaa\xae\xab" + "\x63\xb7\x51\xb1\xa8\x9a\xa1\x50\xc4\xc3\xb1\xb2\xa0\xaa\xd0\x41" + "\x7f\xa4\x91\x76\xb0\x8c\x70\x82\x94\xb9\x8e\x86\x9c\xb7\x57\x93" + "\xa9\xa4\x4c\xac\xa3\x8e\x97\x99\xc0\x6c\xb7\xb7\x4d\xb6\xc0\x99"; diff --git a/src/servers/registrar/TRoster.cpp b/src/servers/registrar/TRoster.cpp index a832b90572..ad7594b586 100644 --- a/src/servers/registrar/TRoster.cpp +++ b/src/servers/registrar/TRoster.cpp @@ -1752,19 +1752,20 @@ TRoster::_HandleGetRecentEntries(BMessage* request) switch (request->what) { case B_REG_GET_RECENT_DOCUMENTS: error = fRecentDocuments.Get(maxCount, (const char**)fileTypes, - fileTypesCount, appSig, &reply); + fileTypesCount, appSig, &reply); D(fRecentDocuments.Print()); break; case B_REG_GET_RECENT_FOLDERS: error = fRecentFolders.Get(maxCount, (const char**)fileTypes, - fileTypesCount, appSig, &reply); + fileTypesCount, appSig, &reply); D(fRecentFolders.Print()); break; default: - D(PRINT(("WARNING: TRoster::_HandleGetRecentEntries(): unexpected " - "request->what value of 0x%lx\n", request->what))); + D(PRINT(("WARNING: TRoster::_HandleGetRecentEntries(): " + "unexpected request->what value of 0x%lx\n", + request->what))); error = B_BAD_VALUE; break; }