(dir_Lookup) : Fix a bug.
@@ -1,5 +1,5 @@ | ||
1 | 1 | /* |
2 | - * Copyright (c) 2006 | |
2 | + * Copyright (c) 2006, 2007 | |
3 | 3 | * Nintendo Co., Ltd. |
4 | 4 | * |
5 | 5 | * Permission to use, copy, modify, distribute and sell this software |
@@ -184,23 +184,26 @@ | ||
184 | 184 | } |
185 | 185 | |
186 | 186 | Handle<IContext> context(binding); |
187 | - Handle<IStream> stream(file->getStream()); | |
188 | 187 | if (context) |
189 | 188 | { |
190 | 189 | *isDirectory = true; |
191 | 190 | *sizeIfFile = 0; |
192 | 191 | } |
193 | - else if (stream) | |
194 | - { | |
195 | - *isDirectory = false; | |
196 | - long long size; | |
197 | - size = stream->getSize(); | |
198 | - *sizeIfFile = size; | |
199 | - } | |
200 | 192 | else |
201 | 193 | { |
202 | - ++index; | |
203 | - continue; | |
194 | + Handle<IStream> stream(file->getStream()); // XXX Check exception | |
195 | + if (stream) | |
196 | + { | |
197 | + *isDirectory = false; | |
198 | + long long size; | |
199 | + size = stream->getSize(); | |
200 | + *sizeIfFile = size; | |
201 | + } | |
202 | + else | |
203 | + { | |
204 | + ++index; | |
205 | + continue; | |
206 | + } | |
204 | 207 | } |
205 | 208 | return ENTRY_FOUND; |
206 | 209 | } |