[chromium-dev] Re: Chrome cache system

2008-10-07 Thread Mils Dz

M. Ricardo thanks for your hints
I still don't know what is the index file used for if it's not filled !
I read index is a hash table that map all cache enties... confusing

2008/10/6 Ricardo Vargas [EMAIL PROTECTED]:
 The cache stores whatever comes over the wire, so if the server is using
 compression, the data will be compressed.
 From your page, the following resources are cached:
 http://rafb.net/nopaste_favicon.gif
 http://rafb.net/styles/nopaste_print.css
 http://rafb.net/styles/nopaste.css
 http://rafb.net/p/S3NMeh91.html
 However, your code is attempting to read the entries right after the index
 header (from the same file), and that is not the case. The entries
 themselves are stored on data_xx files (you'll have to read from data_1 to
 see EntryStore structures).
 You can see code that reads an entry from disk on BackendImpl::NewEntry(),
 (net/disk_cache/backend_impl.cc). After that, EntryImpl::ReadData()
 (net/disk_cache/entry_impl.cc) is used to read the two chunks of data that
 you see when you use view_cache. See net/disk_cache/addr.h to understand
 what a cache address means.
 On Mon, Oct 6, 2008 at 5:23 AM, Mils Dz [EMAIL PROTECTED] wrote:

 Hi back.

 Well guys there's something I don't understand !
 I initialized a cache, and then visited a simple web page, 3 entries
 has been added to that cache (tested with cache viewer).
 Now I'm supposed to find 1 entry referencing the page in the index
 file but I'm getting nothing ôO
 When I read the index header I find 3 for the num_entries field,
 but I only find 0 values...
 here's my test app: http://rafb.net/p/S3NMeh91.html

 Am I missing something ?
 Thank you

 2008/10/4 Mils Dz [EMAIL PROTECTED]:
  A didn't thought about this.
  Thank you :-)
 
  And some hints about funtions used to write down cache info?
  Thanks :)
 
  2008/10/4 Den Molib [EMAIL PROTECTED]:
 
  Mils Dz wrote:
  Guys. I'm very sorry I reread the comments and now I know why it
  creates those f_XXX files ...etc
  But still confused about the Bin/txt modes.
 
  Cheers
  Maybe they're stored compressed if compression was used by the server
  to
  transmit?
 
  
 
 
 
 
  --
  www.auresdev.org
  Free and open source project
 



 --
 www.auresdev.org
 Free and open source project




 




-- 
www.auresdev.org
Free and open source project

--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
Chromium-dev group.
To post to this group, send email to chromium-dev@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/chromium-dev?hl=en
-~--~~~~--~~--~--~---



[chromium-dev] RefPtr

2008-10-07 Thread Eric Seidel

If you're hacking on WebKit and don't feel like you fully understand
RefPtr/PassRefPtr, you should read this:

http://webkit.org/coding/RefPtr.html

Darin (Adler) just updated it last night.  I think it's a useful intro
into ref-counting in WebCore.

-eric

--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
Chromium-dev group.
To post to this group, send email to chromium-dev@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/chromium-dev?hl=en
-~--~~~~--~~--~--~---



[chromium-dev] Re: Chrome cache system

2008-10-07 Thread Ricardo Vargas
// The structure of the whole index file.
struct Index {
  IndexHeader header;
  CacheAddr   table[kIndexTablesize];  // Default size. Actual size
controlled
   // by header.table_len.
};

A given entry on the cache is identified by its key (the name of the
resource). A 32-bit hash is generated from the key. The low order bits of
the hash are used to index the actual table (usually 16 bits), and the value
stored on the table is just a cache address that indicates if the entry is
actually part of the cache, and where to find it. The entry itself is not
located on the index file.

The function that I mention before performs the last part of the lookup:
once you have the CacheAddr for the entry that you're looking for, it reads
the entry from the appropriate place. The external interface of the cache is
located on net/disk_cache/disk_cache.h, and it is implemented on
net/disk_cache/backend_impl.cc.   The basic methods to locate an entry
are OpenEntry and CreateEntry, but of course they assume that you know what
you are looking for (require a key). Through them you can see how the index
file is used.

If you don't know what you're looking for, OpenNextEntry is the method to
use, but following that code is harder to see what the index file is doing.


On Mon, Oct 6, 2008 at 11:48 PM, Mils Dz [EMAIL PROTECTED] wrote:


 M. Ricardo thanks for your hints
 I still don't know what is the index file used for if it's not filled !
 I read index is a hash table that map all cache enties... confusing

 2008/10/6 Ricardo Vargas [EMAIL PROTECTED]:
  The cache stores whatever comes over the wire, so if the server is using
  compression, the data will be compressed.
  From your page, the following resources are cached:
  http://rafb.net/nopaste_favicon.gif
  http://rafb.net/styles/nopaste_print.css
  http://rafb.net/styles/nopaste.css
  http://rafb.net/p/S3NMeh91.html
  However, your code is attempting to read the entries right after the
 index
  header (from the same file), and that is not the case. The entries
  themselves are stored on data_xx files (you'll have to read from data_1
 to
  see EntryStore structures).
  You can see code that reads an entry from disk on
 BackendImpl::NewEntry(),
  (net/disk_cache/backend_impl.cc). After that, EntryImpl::ReadData()
  (net/disk_cache/entry_impl.cc) is used to read the two chunks of data
 that
  you see when you use view_cache. See net/disk_cache/addr.h to understand
  what a cache address means.
  On Mon, Oct 6, 2008 at 5:23 AM, Mils Dz [EMAIL PROTECTED] wrote:
 
  Hi back.
 
  Well guys there's something I don't understand !
  I initialized a cache, and then visited a simple web page, 3 entries
  has been added to that cache (tested with cache viewer).
  Now I'm supposed to find 1 entry referencing the page in the index
  file but I'm getting nothing ôO
  When I read the index header I find 3 for the num_entries field,
  but I only find 0 values...
  here's my test app: http://rafb.net/p/S3NMeh91.html
 
  Am I missing something ?
  Thank you
 
  2008/10/4 Mils Dz [EMAIL PROTECTED]:
   A didn't thought about this.
   Thank you :-)
  
   And some hints about funtions used to write down cache info?
   Thanks :)
  
   2008/10/4 Den Molib [EMAIL PROTECTED]:
  
   Mils Dz wrote:
   Guys. I'm very sorry I reread the comments and now I know why it
   creates those f_XXX files ...etc
   But still confused about the Bin/txt modes.
  
   Cheers
   Maybe they're stored compressed if compression was used by the server
   to
   transmit?
  
   
  
  
  
  
   --
   www.auresdev.org
   Free and open source project
  
 
 
 
  --
  www.auresdev.org
  Free and open source project
 
 
 
 
  
 



 --
 www.auresdev.org
 Free and open source project

 


--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
Chromium-dev group.
To post to this group, send email to chromium-dev@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/chromium-dev?hl=en
-~--~~~~--~~--~--~---



[chromium-dev] Re: Chrome Bookmarks/Passcards

2008-10-07 Thread Ben Goodger (Google)

Hi Chris,

Scott Violet is probably going to begin doing work on a new Bookmark
Manager in the next few weeks. We'll have mocks soon. You should look
at this work and see if it meets your needs.

-Ben

On Mon, Oct 6, 2008 at 4:38 PM, Chris G [EMAIL PROTECTED] wrote:

 Hi,

 I really like Chrome, but it is obvious that effort has been put into
 compatibility with existing sites, the rendering and the multi-process
 secure architechture.  The omnibox and opening page are great.
 Bookmarks and form filling have been neglected.

 This is what I know about where we are at the moment  Without the
 'always show bookmark bar' setting, the only way to load from a
 bookmark is via typing in the Omnibox or a new tab.  There is no
 window that allows proper management of bookmarks.  You can only
 select a bookmark in the Other bookmarks menu and right-click and
 press edit to edit that one bookmark.  Bookmarks can be moved around
 the hierarchy by dragging and dropping.

 What I propose is a new Navigation menu that is accessed next to the
 back and forward arrows.  This allows easy access to all bookmarks.
 Additionally it will goto the smart homepage, has a submenu to access
 all the hidden chrome stats pages and at the moment I have another
 submenu for managing the 'Chrome Memory' which I have identified as
 containing History, Downloads (management pages already exist for
 these two) Bookmarks, Passwords, Search places and Cookies.  I have
 this coded but can't find a way to upload a jpg.

 The backend storage for history has been improved already, but the
 others have been ignored.  I would propose looking into a way to merge
 all these.  I have lots of ideas for managing bookmarks and
 integrating this with the Password system.  I use RoboForm for
 passwords and form filling in IE and miss it in Chrome so I am happy
 to write the equivalent code to add something better to chrome.

 I would like to add many properties to each bookmark, while keeping
 the interface very clean and simple:
 * Organise bookmarks with folders and labels.
 * Pin bookmark to smart homepage.
 * Exclude bookmark from smart homepage.
 * Set bookmark for automatic incognito.
 * Mark bookmark to show on bookmark bar.
 * Mark bookmark to show on Navigation menu.
 * Store passwords and other form entries with bookmark for auto
 filling.  Need password to use passcards and another to view/edit
 them.
 * Store favicon and thumbnail for all bookmarked sites.  (anyone know
 why favicons are only stored in history?)
 * Live access to bookmark stores of other browsers and web services.
 * Tie bookmarks to SSL entity for better user security.
 * Report visit history and cookies per bookmark.
 * Automatically add Search features from favourite sites.
 * Set site to prefetch all links on page when loading for fast or
 offline access (Don't clog the pipes! hehe)
 * Implement more ways to access bookmarks using the smart home page as
 a start for the idea.

 I am asking what else is being done so I don't spend weeks writing it
 to find someone has uploaded something similar!!

 Chris

 PS. Pls let me know how to send you all my nav menu jpg.  I also got
 to the bottom of a problem when adding icons to menu items changed the
 whole menu appearance in Vista!  There are two separate classes for
 'owner drawing' menus.  The page and settings menu use the wrong one!
 


--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
Chromium-dev group.
To post to this group, send email to chromium-dev@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/chromium-dev?hl=en
-~--~~~~--~~--~--~---



[chromium-dev] Re: webkit unforking

2008-10-07 Thread Dimitri Glazkov

To me, it looks like the case where we could create an abstraction,
similar to what I did with ExceptionContext, which encapsulates
ExecState* and ArgList* on JSC side and provides a way to pass
strings/line numbers for V8.

So, at this point I would merge Console.cpp into one two-chunked file
(option 1) with the plan to implement and upstream ConsoleContext.

...

Perhaps ExceptionContext  ConsoleContext = ScriptContext?

:DG

On Tue, Oct 7, 2008 at 2:27 PM, Elliot Glaysher [EMAIL PROTECTED] wrote:
 As the person who threw together a good chunk of Console.cpp, I'd
 prefer that we keep Console.cpp local, at least in the short term
 because it's nowhere near complete yet. I'm currently waiting for
 crbug.com/2960 to be fixed in V8 so Console output has line numbers,
 which will require me to change the declarations in the USE(V8)
 section of Console.h so it also takes a line number...

 -- Elliot

 On Tue, Oct 7, 2008 at 2:17 PM, Ojan Vafai [EMAIL PROTECTED] wrote:
 If you are helping with the next merge, or with unforking WebKit code, read
 on. Otherwise, don't bother.
 In attempting to get the KJS build compiling I ran into a case that seems
 similar to many of the issues we've run into that required us to move things
 into port. I figured we could talk now about what the right solution is both
 so I can fix the error in front of me and so we'll have a good sense of how
 to move forward on these issues.
 In Console.h, most of the methods take KJS specific types and we fork them
 to take Strings, e.g.
 #if USE(JSC)
 void debug(KJS::ExecState*, const KJS::ArgList);
 #elif USE(V8)
 void debug(const String message);
 #endif
 Then we have our own implementation of Console.cpp that implements just the
 V8 methods and is a totally different implementation than the KJS
 equivalents.
 I see a couple solutions:
 1. Move our V8 implementation of Console.cpp methods into the
 third_party/WebKit one wrapped in #if USE(V8).
 2. Move Console.cpp out of port.vcproj and into V8Bindings.vcproj and
 KJSBindings.vcproj appropriatly.
 Are there other options? Preferences?
 Ojan
 



--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
Chromium-dev group.
To post to this group, send email to chromium-dev@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/chromium-dev?hl=en
-~--~~~~--~~--~--~---



[chromium-dev] Re: webkit unforking

2008-10-07 Thread Evan Martin

Eric asked on #webkit, and (since I don't think they log(?)) I'll just
paraphrase a response from there, which is that this is a bad idea
since the inspector needs to have all the arguments and not just a
single string.

On Tue, Oct 7, 2008 at 2:17 PM, Ojan Vafai [EMAIL PROTECTED] wrote:
 If you are helping with the next merge, or with unforking WebKit code, read
 on. Otherwise, don't bother.
 In attempting to get the KJS build compiling I ran into a case that seems
 similar to many of the issues we've run into that required us to move things
 into port. I figured we could talk now about what the right solution is both
 so I can fix the error in front of me and so we'll have a good sense of how
 to move forward on these issues.
 In Console.h, most of the methods take KJS specific types and we fork them
 to take Strings, e.g.
 #if USE(JSC)
 void debug(KJS::ExecState*, const KJS::ArgList);
 #elif USE(V8)
 void debug(const String message);
 #endif
 Then we have our own implementation of Console.cpp that implements just the
 V8 methods and is a totally different implementation than the KJS
 equivalents.
 I see a couple solutions:
 1. Move our V8 implementation of Console.cpp methods into the
 third_party/WebKit one wrapped in #if USE(V8).
 2. Move Console.cpp out of port.vcproj and into V8Bindings.vcproj and
 KJSBindings.vcproj appropriatly.
 Are there other options? Preferences?
 Ojan
 


--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
Chromium-dev group.
To post to this group, send email to chromium-dev@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/chromium-dev?hl=en
-~--~~~~--~~--~--~---



[chromium-dev] Re: webkit unforking

2008-10-07 Thread Eric Seidel

There are a bajillion logs of #webkit.  None of them official.

-eric

On Tue, Oct 7, 2008 at 2:50 PM, Evan Martin [EMAIL PROTECTED] wrote:
 Eric asked on #webkit, and (since I don't think they log(?)) I'll just
 paraphrase a response from there, which is that this is a bad idea
 since the inspector needs to have all the arguments and not just a
 single string.

 On Tue, Oct 7, 2008 at 2:17 PM, Ojan Vafai [EMAIL PROTECTED] wrote:
 If you are helping with the next merge, or with unforking WebKit code, read
 on. Otherwise, don't bother.
 In attempting to get the KJS build compiling I ran into a case that seems
 similar to many of the issues we've run into that required us to move things
 into port. I figured we could talk now about what the right solution is both
 so I can fix the error in front of me and so we'll have a good sense of how
 to move forward on these issues.
 In Console.h, most of the methods take KJS specific types and we fork them
 to take Strings, e.g.
 #if USE(JSC)
 void debug(KJS::ExecState*, const KJS::ArgList);
 #elif USE(V8)
 void debug(const String message);
 #endif
 Then we have our own implementation of Console.cpp that implements just the
 V8 methods and is a totally different implementation than the KJS
 equivalents.
 I see a couple solutions:
 1. Move our V8 implementation of Console.cpp methods into the
 third_party/WebKit one wrapped in #if USE(V8).
 2. Move Console.cpp out of port.vcproj and into V8Bindings.vcproj and
 KJSBindings.vcproj appropriatly.
 Are there other options? Preferences?
 Ojan
 



--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
Chromium-dev group.
To post to this group, send email to chromium-dev@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/chromium-dev?hl=en
-~--~~~~--~~--~--~---



[chromium-dev] Re: Issue 3080: {Get/Set}CurrentDirectory()

2008-10-07 Thread Dr Pizza

Their fixed-size nature is also pretty lousy. That is to say, they're
limited to MAX_PATH with no provision for long-filenames (longer than
MAX_PATH that is). They're not the only place that Win32 has such
restrictions, but they're one of the harder to avoid ones.

2008/10/6 Darin Fisher [EMAIL PROTECTED]:
 I added a comment in the bug, which explains why I think those functions are
 to be avoided.  There may be other good reasons too!
 -Darin

 On Sun, Oct 5, 2008 at 8:27 PM, enchantingBlu [EMAIL PROTECTED]
 wrote:

 Hi,

 A bug has been filed lately for replacing GetCurrentDirectory and
 SetCurrentDirectory. No furthur information is provided. I assume the
 problem with these would be about DOS kind of naming and full path
 naming of the directory paths? Also, with the cross platform work
 going on, these will be more or less consumed anyway. But if anyone
 has any real issues with these then lets discuss this here or get the
 bug out of the backlog?

 thanks,

 Zaki



 




-- 
char a[9],*p=a;main(c,V)char**V;{char*v=c0?1[V]:V;if(c)for(;(c=*v)93^
c;p+=!(62^c)-!(60^c),*p+=!(43^c)-!(45^c),44^c||read(0,p,1),46^c||putchar(*p)
,91^c||(v=*p?main(-1,v+1),v-1:main(0,v)),++v);else for(;c+=!(91^*v)-!(93^*v)
;++v);return v;} /* [EMAIL PROTECTED]brainf*** program as argv[1] */

--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
Chromium-dev group.
To post to this group, send email to chromium-dev@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/chromium-dev?hl=en
-~--~~~~--~~--~--~---