Return-Path: Delivered-To: apmail-apache-bugdb-archive@apache.org Received: (qmail 46474 invoked by uid 500); 4 Feb 2002 00:10:01 -0000 Mailing-List: contact apache-bugdb-help@apache.org; run by ezmlm Precedence: bulk Reply-To: apache-bugdb@apache.org list-help: list-unsubscribe: list-post: Delivered-To: mailing list apache-bugdb@apache.org Received: (qmail 46454 invoked by uid 501); 4 Feb 2002 00:10:00 -0000 Resent-Date: 4 Feb 2002 00:10:00 -0000 Resent-Message-ID: <20020204001000.46453.qmail@apache.org> Resent-From: submit@bugz.apache.org (GNATS Filer) Resent-To: apache-bugdb@apache.org Resent-Cc: apache-bugdb@apache.org Resent-Reply-To: submit@bugz.apache.org, ddowns@cpdevelopments.com Received: (qmail 46087 invoked by uid 501); 4 Feb 2002 00:08:07 -0000 Message-Id: <20020204000807.46086.qmail@apache.org> Date: 4 Feb 2002 00:08:07 -0000 From: Dan Downs Reply-To: ddowns@cpdevelopments.com To: submit@bugz.apache.org X-Send-Pr-Version: 3.110 Subject: mod_isapi/9700: streaming an image to the browser doesn't correctly >Number: 9700 >Category: mod_isapi >Synopsis: streaming an image to the browser doesn't correctly >Confidential: no >Severity: serious >Priority: medium >Responsible: apache >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: apache >Arrival-Date: Sun Feb 03 16:10:00 PST 2002 >Closed-Date: >Last-Modified: >Originator: ddowns@cpdevelopments.com >Release: 1.3.23 & 2.0.28 >Organization: apache >Environment: W2k Advanced Server SP2 >Description: I have a isapi dll created with Delphi 6 that generates a chart and streams it the browser. It works fine under OmniHTTPD and IIS5 but seems to hang a apache process. The process will use all leftover cpu time resulting in 100% cpu usage under task manager. I can run isapi dlls fine if they return text but it breaks when returning images. So far I've only tried to return jpegs. Under 1.3.23 it hangs a single apache process. Under 2.0.28 it shows the image for the first request then hangs a single process. >How-To-Repeat: This is the code to handle the /GetChart action on the dll. var MemStr : TMemoryStream; begin MemStr := GenerateChart; MemStr.Position := 0; Response.CustomHeaders.Add('Content-Disposition=; ' + 'filename="chart.jpg"'); Response.ContentType := 'image/jpeg'; Response.ContentLength := MemStr.Size; Response.ContentStream := MemStr; Response.SendResponse; end; I have tried a few different variations of this. Original: //works under IIS5 and omniHTTPd Response.ContentType := 'image/jpeg'; Response.ContentStream := GenerateChart; Response.SendResponse; >Fix: Not as of yet. >Release-Note: >Audit-Trail: >Unformatted: [In order for any reply to be added to the PR database, you need] [to include in the Cc line and make sure the] [subject line starts with the report component and number, with ] [or without any 'Re:' prefixes (such as "general/1098:" or ] ["Re: general/1098:"). If the subject doesn't match this ] [pattern, your message will be misfiled and ignored. The ] ["apbugs" address is not added to the Cc line of messages from ] [the database automatically because of the potential for mail ] [loops. If you do not include this Cc, your reply may be ig- ] [nored unless you are responding to an explicit request from a ] [developer. Reply only with text; DO NOT SEND ATTACHMENTS! ]